Application을 설치(Install), 삭제(Uninstall), 업데이트(Update)를 할 경우 아래와 같은 Action의 Broadcast 이벤트가 발생합니다. PACKAGE_ADDED PACKAGE_REMOVED PACKAGE_REPLACED 하지만 위 Action을 Intent filter에 등록하고 Receiver에서 이벤트를 받을려고 해도 이벤트가 받아지지 않습니다. 그렇다고 추가로 Permission이 필요한 것도 아닙니다. 위 Action들을 처리할 Scheme가 등록이 되지 않아서 그런데요. 위 Action들이 필요로 하는 Scheme를 아래와 같이 등록하면 Receiver에서 […]
태그: 안드로이드
[Android] 외부 어플리케이션 실행 시키기
어플리케이션을 개발하다보면 외부 어플리케이션의 실행을 원할 때가 있는데 이 경우 보통 묵시적 호출을 통해서 외부 어플리케이션을 실행 시킵니다. 하지만 간혹 명시적으로 필요한 어플리케이션을 딱 지정해서 실행을 시키고 싶을 때가 있습니다. 이럴 경우 아래와 같이 패키지명과 액티비티명으로 명시적으로 호출을 할 수 있습니다. ComponentName cn = new ComponentName(”패키지명”, 패키지명.액티비티명”); Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_LAUNCHER); […]
[Android] WebView Settings
자바스크립트 사용 – webview.getSettings().setJavaScriptEnabled(true); 접속 브라우저 종류 설정 (android, desktop) ; 브라우저 종류를 설정해줌으로써 모바일 페이지가 열릴지, 데스크톱 페이지가 열릴지 결정 – webview.getSettings().setUserAgent(ua); (ua = 0 – android, ua = 1 – desktop) 화면 크기에 맞도록 resize content webview.getSettings().setUseWideViewPort(true); webview.setInitialScale(1);
[Android] TCP/IP로 연결하여 디버깅하는 방법
디바이스를 USB 케이블이 아닌 TCP/IP로 연결하여 디버깅 하는 방법으로 Wi-Fi가 연결 된 상태에서 디바이스의 IP로 ADB 연결을 합니다. 단, 디바이스가 루팅이 되어 있어야 가능 합니다. 준비 – 루팅이 된 디바이스 디바이스의 터미널 에뮬레이터 애플리케이션을 통한 설정 * TCP/IP 설정 – su – setprop service.adb.tcp.port <port> – stop adbd – start adbd * USB 케이블 설정 […]
[Android] 디바이스 회전시 변수값, 쓰레드 유지하기
안드로이드 디바이스는 0˚, 90˚, 270˚ 로 회전의 된다. 그리고 키보드를 열거나 닫을 때 역시 회전이 된다. 그런데 문제는 이때 액티비티가 onDestroy(), onCreate()를 수행하면서 액티비티가 가지고 있던 변수값과 쓰레드가 초기화되는 것이다. 이 초기화로 인하여 정상적으로 동작이 되는 경우도 있겠지만 오작동을 을으키는 경우가 생기기 때문에 이 값들을 유지 시킬 수 있도록 해주는 것이 필요하다. […]