2011-10-12 3 views
2

J'ai besoin d'écrire des données dans un fichier, lorsque le système redémarre pas au démarrage terminé. J'utilise le récepteur de radiodiffusion « android.intent.action.REBOOT » ci-dessous mon code et les fichiers manifestesRécepteurs de diffusion au redémarrage?

public class broadcastreceiver extends BroadcastReceiver{ 
@Override 
public void onReceive(Context context, Intent intent) { 
Log.i("LOG_TAG","rebooted"); 
} 
fichier manifeste

:

<application android:icon="@drawable/icon" android:label="@string/app_name"> 
<activity android:name=".broadcast" 
android:label="@string/app_name"> 
<intent-filter> 
<action android:name="android.intent.action.MAIN" /> 
<category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 
</activity> 
<receiver android:name="com.example.broadcastreceiver.broadcastreceiver" 
android:enabled="true" 
android:exported="true" 
android:permission="android.permission.REBOOT"> 
<intent-filter>  
<action android:name="android.intent.action.REBOOT" /> 
</intent-filter> 
</receiver> 
</application> 

mais je ne suis pas capable d'écrire même un journal lorsque redémarre. note: je ne veux pas utiliser l'action Bootcompleted dans le récepteur de diffusion

Répondre

2

Je ne vois pas pourquoi vous ne voulez pas utiliser BootCompleted, pourriez-vous fournir vos raisons?

Aucune autre action n'alertera le récepteur de diffusion du démarrage. Vous devrez utiliser BootCompleted.

En note, j'espère que vous vous enregistrez BroadcastReceiver avec le contexte (puisque vous n'avez pas inclus ce code). Si vous n'utilisez pas BootComplete, je ne sais pas quelle action vous avez enregistrée pour que le code ci-dessus s'exécute.

+0

J'ai besoin de maintenir à des récepteurs un pour le redémarrage et un pour le bootcompleted .i a traversé des récepteurs de diffusion de android.developers.com qui suggèrent qu'il est possible d'utiliser l'action de redémarrage. – RanjitRock

+1

+1 pour la réponse. Vous devriez utiliser BootCompleted si vous voulez attraper le journal ouput – androidnoob

+1

depuis "android.intent.action.REBOOT" est utilisé par le système seulement, il ne peut pas être utilisé dans l'application de l'utilisateur côté.nous devons signer l'apk avec la clé de la plate-forme.i décidé utiliser boot_completed..thanks chacun – RanjitRock

Questions connexes