2010-09-20 2 views
1

J'utilise le code suivant pour l'alarme, il alertera après 10 secondes. Ses œuvres fines dans l'émulateur, mais en son véritable appareil me guider closing..can forcely vous de manière correcte .. ceci est mon actvity ..Alarme dans android

 public class Alarm1 extends Activity { 
/** Called when the activity is first created. */ 
@Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

Intent intent = new Intent(this, AlarmReceiver.class); 
PendingIntent pendingIntent = PendingIntent.getBroadcast(this,001000,intent,0); 


AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE); 
alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + (5 * 1000), pendingIntent); 
Toast.makeText(this,"Alarm set", Toast.LENGTH_LONG).show(); 

}} ` Cette classe est récepteur

public class AlarmReceiver extends BroadcastReceiver { 

@Override 
public void onReceive(Context context, Intent intent) { 
    Toast.makeText(context, "Alarm worked", Toast.LENGTH_LONG).show(); 
    try{ 

     Intent back = new Intent(context,Alarm.class); 
     back.addFlags(Intent.FLAG_FROM_BACKGROUND); 
     back.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     back.setAction("android.intent.action.MAIN"); 
     back.addCategory("android.intent.category.LAUNCHER"); 
     context.startActivity(back); 
    } 
    catch(Exception e){} 

} 

}

Ceci est à jouer Ringtone pour l'alarme.

public class Alarm extends Activity { 
private MediaPlayer mp; /** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.alarm); 
    mp = MediaPlayer.create(this, R.raw.up); 
    mp.start(); 

    Button start = (Button) findViewById(R.id.Button01); 
    start.setOnClickListener(vvvvv); 
} 

private OnClickListener vvvvv = new OnClickListener() { 
    public void onClick(View v) { 

     mp.stop(); 
     finish(); 
    } 
}; 

}

Cela fonctionne bien dans l'émulateur, mais pas sur les autorisations utilisées de device..i réelle aussi .. J'utilise Samsung Galaxy 1.6. Merci à l'avance ..

+1

utiliser logcat pour obtenir l'erreur –

+0

Il n'y a pas d'erreurs dans logcat –

+0

Besoin de la pile. – st0le

Répondre

0
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, i, PendingIntent.FLAG_ONE_SHOT); 
     Calendar calendar = Calendar.getInstance(); 

     calendar.set(Calendar.SECOND, calendar.get(Calendar.SECOND)+10); 
     AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE); 
     alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(),pendingIntent); 
0

Essayez cela, il m'a aidé quand j'eu le même problème

  1. Connectez votre appareil, Désinstallez votre application (si elle est installée précédemment).
  2. Exécutez votre application et attendez qu'elle soit installée sur votre téléphone.
  3. Ouvrir chat Log, et maintenant essayer d'exécuter votre application qui, selon vous obligez ferme, le chat de journal affiche maintenant plusieurs lignes rouges et orange indiquant vos erreurs telles est la manipulation de fil ou peu de mémoire, etc.

Ce qui serait ressembler à ceci,

This is my error log or log cat

S'il vous plaît commentaire ici avec votre journal d'erreur, si vous avez besoin d'aide supplémentaire.

Questions connexes