Я знаю, что это было задано много раз, и есть сотни примеров в Интернете, но я хочу понять, что не так в моем коде. Как видно из названия, я хочу выполнить какой-то код во время включения телефона, в частности, я хочу установить некоторые сигналы для получения уведомлений, но теперь это не актуально, моя проблема заключается в том, что приемник-приемник onReceive никогда не называется явноBootReceiver не работает
у меня есть правильные разрешения в манифесте:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
И я также зарегистрировал приемник в проявленном
<receiver
android:name=".BootBroadcastReceiver"
android:enabled="true" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
И я уже создал класс приемника
public class BootBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context pContext, Intent intent) {
Toast.makeText(pContext,"waiting for debugger",Toast.LENGTH_LONG).show();
android.os.Debug.waitForDebugger();
//Stuff for the alarms
}
}
Может кто-нибудь объяснить мне, что я упущение, не отправляя всегда одни и те же примеры, которые я вижу повсюду? Я хочу знать, что не так в моем коде, а не как это сделать.
PS:: Я забыл сказать, что мне нужно остановить код для отладки тревожных событий, но я не думаю, что это проблема, поскольку он даже не показывает Toast. UPDATE: полный манифест
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="feddycapdev.conapo.turnario" >
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".Calendario"
android:label="@string/title_activity_calendario"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".Settings_Activity"
android:label="@string/title_activity_settings_" >
</activity>
<activity
android:name=".SettingGiorno"
android:label="@string/title_activity_setting_giorno" >
</activity>
<receiver
android:name=".BootBroadcastReceiver"
android:enabled="true" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
<service android:enabled="true" android:name=".WebNotificChecker" />
<service android:enabled="true" android:name=".Sveglia" />
<service android:enabled="true" android:name=".NotificaVigilanza" />
</application>
</manifest>
Просьба представить весь ваш манифест. В частности, пожалуйста, покажите элемент '' для вашей активности запуска, который вы должны выполнить до того, как ваш приемник, зарегистрированный манифеста, будет работать. –
CommonsWare
И, конечно, вы запускаете хотя бы одну активность из вашего апка из пусковой установки? – Selvin
CommonsWare Я не понимаю, что вы говорите, поэтому я должен запустить эту операцию перед приемником? Но если это так, как я могу установить уведомление, если пользователь не открывает активность? –