마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

apk 설치창이 뜰때 브로드캐스트로 값을 받고싶습니당 [closed]

0 추천

ACTION_PACKAGE_INSTALL <-- 요걸로 하면 받을수 있을거같은데 api 14이상에서는 못쓴다는 문구가 보이네요...막힌건지..

검색해서 나오는걸로는 

IntentFilter filter = new IntentFilter();

filter.addAction(Intent.ACTION_PACKAGE_INSTALL);
filter.addDataScheme("package");
br = new BroadcastReceiver();
registerReceiver(br, filter);
 
요런식으로 소스로 등록하면 사용할수 있다는데 intent.getAction 으로 받질 못하네요...
apk설치창 뜰때 값받을수 있는 방법 없을까요? 도와주세요 ㅠ
질문을 종료한 이유: 해결방법이 없음...(?)
아직도초보 (3,030 포인트) 님이 2014년 5월 7일 질문
아직도초보님이 2014년 5월 8일 closed

1개의 답변

0 추천
  1. AndroidManifest.xml에 권한 설정을 하세요.
  2. ACTION_PACKAGE_ADDED 를 사용하세요.
익명사용자 님이 2014년 5월 7일 답변
매니페스트
<receiver android:name=".Receiver.BootReceiver" >
            <intent-filter>
                <action android:name="android.intent.action.ACTION_PACKAGE_ADDED" />
                <action android:name="android.intent.action.ACTION_PACKAGE_CHANGED" />
                <action android:name="android.intent.action.ACTION_PACKAGE_DATA_CLEARED" />
                <action android:name="android.intent.action.ACTION_PACKAGE_INSTALL" />
                <action android:name="android.intent.action.ACTION_PACKAGE_REMOVED" />
                <action android:name="android.intent.action.ACTION_PACKAGE_REPLACED" />
                <action android:name="android.intent.action.ACTION_PACKAGE_RESTARTED" />

                <data android:scheme="package" />
            </intent-filter>
        </receiver>

br = new BootReceiver();
        IntentFilter filter = new IntentFilter();
        filter.addAction(Intent.ACTION_PACKAGE_ADDED);
        filter.addAction(Intent.ACTION_PACKAGE_CHANGED);
        filter.addAction(Intent.ACTION_PACKAGE_DATA_CLEARED);
        filter.addAction(Intent.ACTION_PACKAGE_INSTALL);
        filter.addAction(Intent.ACTION_PACKAGE_REMOVED);
        filter.addAction(Intent.ACTION_PACKAGE_REPLACED);
        filter.addAction(Intent.ACTION_PACKAGE_RESTARTED);
        filter.addDataScheme("package");
        registerReceiver(br, filter);

다 등록했는데 브로드캐스트에서 읽어오질 못하네요ㅠㅠ 왜이런거죠?
권한은 퍼미션 말씀하시는건가요? 권한 달라는 글은 못본거같은데 어떤걸 걸어줘야되나요??
권한은 제가 잘못 말씀드린 듯 합니다.

위 인텐트는 모두 해당 작업이 완료된 후에 발생합니다.
설치화면이나 삭제화면이 뜰 때는 발생하지 않습니다.
설치화면에서 받는 방법은 없는건가요?ㅠㅠ
...