2013-09-17 17 views
0

Я видел статью this . Тогда я пытаюсь сделать пример, чтобы поймать событие, когда я установил приложениеAndroid - BroadcastReceiver не работает

Это мой код `

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    AppInstalled appInstalled = new AppInstalled(); 
    IntentFilter intentFilter = new IntentFilter(); 
    intentFilter.addAction(Intent.ACTION_PACKAGE_ADDED); 
    intentFilter.addDataScheme("package"); 
    registerReceiver(appInstalled, intentFilter); 
} 

private class AppInstalled extends BroadcastReceiver 
{ 
    @Override 
    public void onReceive(Context context, Intent intent) { 
     Toast.makeText(SplashActivity.this, "Application Installed", Toast.LENGTH_SHORT).show(); 
    } 
}` 

Но он никогда не показывать сообщение. Пожалуйста, дайте мне несколько советов

+0

Вы добавили класс BroadcastReceiver в прикладной тег файла манифеста? –

+0

да, но то же самое –

ответ

0

Вы должны добавить свой ресивер в файл AndroidManifest.xml под тегом. Пожалуйста, проверь это.

+0

я добавил. Но не работает вообще –

0

регистр вы приемник в файле манифеста

<receiver android:name=".AppInstalled"> 
    <intent-filter> 
     <action android:name="android.intent.action.PACKAGE_INSTALL" /> 
     <action android:name="android.intent.action.PACKAGE_ADDED" /> 
     <data android:scheme="package"/> 
    </intent-filter> 
</receiver> 
+0

android.intent.action.PACKAGE_INSTALL устарел на уровне API 14 –

Смежные вопросы