Ho un'app per Android che riproduce l'audio dalla classe dell'applicazione. Ho un PhoneStateListener nella mia classe di applicazione che mette in pausa l'audio quando c'è una telefonata.Android: avvio di una nuova attività dalla classe di applicazione
Desidero avviare un'attività particolare al termine della chiamata, ma non riesco a. ecco il mio codice:
public void getPhoneState(){
TelephonyManager mgr = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
PhoneStateListener phoneStateListener = new PhoneStateListener() {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
if (state == TelephonyManager.CALL_STATE_RINGING) {
if(audio.isPlaying())
audioPlayer.pause();
}
else if(state == TelephonyManager.CALL_STATE_IDLE) {
audio.start();
Intent missintent= new Intent(context,AudioActivity.class);
missintent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(missintent);
}
else if(state == TelephonyManager.CALL_STATE_OFFHOOK) {
if(audio.isPlaying())
audioPlayer.pause();
}
super.onCallStateChanged(state, incomingNumber);
}
};
if(mgr != null) {
mgr.listen(phoneStateListener, PhoneStateListener.LISTEN_CALL_STATE);
}
}
public boolean handleAudio(String source, int id) {
phoneState();
//Code for Playing Audio
.....
.....
}
Apprezzerei se qualcuno potesse mostrarmi come avviare l'attività nel modo corretto.
Grazie!
io non sono sicuro circa l'approccio corretto al riguardo, come non ho mai fatto, e don Non so se dovresti iniziare un'attività dalla classe dell'applicazione, perché imposti sempre la classe di iscrizione sul manifest, ma considerando che puoi farlo ... hai aggiunto la tua attività al manifest? –
La mia attività è stata aggiunta al manifest. Non è possibile avviare un'attività dalla classe dell'applicazione? – AndroidDev93
Non ho detto che non lo è. Ho detto che non lo so, perché non l'ho mai fatto e dal momento che hai già la classe iniziale sul manifest, definita dall'intenzione: intent-filter> –