J'ai une question à propos de Android Receiver. Je suis possible de changer l'application Système. B est la première application, lorsque l'utilisateur allume l'alimentation. Mais le problème est lorsque l'utilisateur choisit le mode FACTORY (comme la langue de réglage, google id ...), B App doit commencer à terminer un paramètre App. C'est pourquoi utiliser android: enabled = "false" et A application déclencheur App. Mais ne fonctionne pas.Comment désactiver/activer le récepteur Android dans le code source?
Je pense que "android.intent.action.BOOT_COMPLETED" envoyer juste une fois après le démarrage, donc après avoir changé activer l'application récepteur B, cela ne fonctionne pas. Est ce bien? S'il vous plaît pouvez-vous me donner quelques conseils?
Une application
PackageManager pm = getPackageManager();
ComponentName compName = new ComponentName("com.test.myapp", "com.test.myapp.receiver");
pm.setComponentEnabledSetting(compName, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, 0);
B App AndoidManifest.xml
<receiver
android:name="com.test.myapp.receiver"
android:enabled="false">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
B App
public void onReceive(Context context, Intent intent) {
if(Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())){
Intent startMainActivityIntent = new Intent(context, new.class);
startMainActivityIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(startMainActivityIntent);
}
Vous pouvez utiliser la méthode par défaut 'registerReceiver()' & 'deregisterReceiver'. Pour plus d'informations, voir ceci: http://stackoverflow.com/questions/4134203/how-to-use-registerreceiver-method – astuter