#android #broadcastreceiver
#Android #broadcastreceiver
Вопрос:
Я новичок в Android. Я полностью застрял в использовании ACTION_PACKAGE_RESTARTED в моем приложении
Я удалил pacakge из своего эмулятора, также добавил с помощью adb install, но ничего не получил. Запустите приложение. закройте это и снова запустите это приложение. у меня ничего не работает. В logcat нет входа в систему.
Есть ли что-нибудь, чего мне не хватает? Пожалуйста, помогите
public class RestartReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String action= intent.getAction();
Log.i("D", "Inside receiver");
}
И вот файл манифеста
<application android:icon="@drawable/icon" android:label="@string/app_name">
<receiver android:name=".ReceiverTest">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_REMOVED" />
<action android:name="android.intent.action.PACKAGE_ADDED" />
<action android:name="android.intent.action.ACTION_PACKAGE_RESTARTED" />
</intent-filter>
</receiver>
</application>
Ответ №1:
значение, указанное в фильтре намерений, неверно .. фактическое значение равно
<action android:name="android.intent.action.PACKAGE_RESTARTED" />
и эта трансляция может быть получена только для других пакетов. Перезапущенное приложение / пакет не получает эту трансляцию.
Ответ №2:
Вы должны добавить спецификацию данных в фильтр намерений:
<data android:scheme="package" />