Я добавил приемник для прослушивания, когда приложение установлено. Но это не работает. Вот мой код в AndroidManifest.xmlAndroid onReceive in BroadcastReceiver не работает
<receiver android:enabled="true"
android:exported="true"
android:name="com.bsp.iqtest.reiceiver.IQTestReceiver">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_ADDED" />
<action android:name="android.intent.action.PACKAGE_REPLACED" />
<data android:scheme="package"/>
</intent-filter>
</receiver>
Вот мой код в MainActivity (пусковой деятельности), функция OnCreate.
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
IQTestReceiver br = new IQTestReceiver();
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(Intent.ACTION_PACKAGE_ADDED);
intentFilter.addAction(Intent.ACTION_PACKAGE_REPLACED);
intentFilter.addDataScheme("package");
registerReceiver(br, intentFilter);
}
Вот мой код в IQTestReceiver (этот класс записывается в другой файл)
public class IQTestReceiver extends BroadcastReceiver {
public IQTestReceiver() {
}
@Override
public void onReceive(Context context, Intent intent) {
String packageName=intent.getData().getEncodedSchemeSpecificPart();
Log.e("HELLO",packageName);
}
}
я поставил точку останова в OnReceive функции, но она не работает, когда я отладки.
Спасибо за помощь.
Почему вы регистрируетесь приемник в деятельности OnCreate? Получатель уже зарегистрирован в манифесте. Возможно, просмотрите его. http://www.vogella.com/tutorials/AndroidBroadcastReceiver/article.html – nurisezgin
Вам нужно получить событие установки вашего приложения? И если да, зачем это нужно? –
Ах, нам нужно нажать данные по умолчанию (эти данные загружаются с URL-адреса), когда приложение установлено. – beginner