Comment vérifier dans android comment un plantage du programme?
Question
Y at-il un outillage ou peut-être un journal, où je peux voir ce qui a causé ma demande en cours d'exécution sur un téléphone mobile Android, Hung ou éventuellement tomber en panne?
Je l'ai programmé une application signée qui est un runnable, il vérifie les messages sur mon serveur et envoyer des messages SMS à un récepteur, et après deux ou peut-être 3 jours, les Hungs d'application ou se bloque.
Comment puis-je voir ce qui a causé l'accident?
Cordialement.
Shafqat
private void startservice() {
r = new Runnable()
{
public void run()
{
//execute the sms class and get the url
//build the url
SendSMS sms = null;
//TODO get the url from a database
Map<String, String> jsonitems = new JSONParser().parse(urlsmsservice+getDeviceId());
if(!jsonitems.isEmpty()){
sms = new SendSMS(context, jsonitems.get("PHONENUMBER").toString(), jsonitems.get("MESSAGE").toString());
sentReceiver.setCallbackUrl(jsonitems.get("CALLBACKURL").toString());
deliveredReceiver.setCallbackUrl(jsonitems.get("CALLBACKURL").toString());
sms.send();
}else{
Log.d(TAG, "No messages in Queue");
}
//handler.postDelayed(this, getInterval());
}
};
handler = new Handler();
thread = new Thread()
{
@Override
public void run() {
try {
while(thbool) {
sleep(getInterval());
handler.post(r);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
thread.start();
}
La solution
Assurez-vous que les outils de la BAD sont installés (ils seront avec le SDK). Ensuite, exécutez adb logcat
, qui montrera la sortie du journal du système (utile est une exception est levée). Il existe également des applications de marché libre qui vous montrera le tampon logcat (aLogCat
vient à l'esprit).