Android - значок Dialer помещается в недавно используемые приложения после Finish ()
-
18-09-2019 - |
Вопрос
В своем приложении я обнаруживаю вызов, когда вызов набирается из номерона или контактов.
Это работает нормально, и затем я всплываю в диалоговом окне, в котором говорится, что обнаружил вызов, а затем пользователь нажимает кнопку, чтобы закрыть диалог, который вызывает завершение () на этом действии.
Все работает нормально, за исключением того, что когда я затем держу домашний ключ, чтобы поднять недавно используемые приложения, значок номерона.
И когда его щелкнут, диалоговое окно возвращается в фокус на переднем плане, когда диалоговое действие должно быть мертвы и исчезнуть и не может быть возвращено на передний план.
Вот фотография того, что я имею в виду.
Ошибка номера http://img515.imageShack.us/img515/8505/devicev.png
Итак, возникают два вопроса, почему значок номерона будет помещен там и зачем вспоминать мою деятельность на передний план?
Вот код для этой деятельности, которая имеет диалоговую тему:
public class CallDialogActivity extends Activity{
boolean isRecording;
AudioManager audio_service;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dialog);
audio_service = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
Bundle b = this.getIntent().getExtras();
String number = b.getString("com.networks.NUMBER");
String name = b.getString("com.networks.NAME");
TextView tv = (TextView) findViewById(R.id.voip) ;
tv.setText(name);
Intent service = new Intent(CallAudio.CICERO_CALL_SERVICE);
startService(service);
final Button stop_Call_Button = (Button) findViewById(R.id.widget35);
this.setVolumeControlStream(AudioManager.STREAM_VOICE_CALL);
stop_Call_Button.setOnClickListener(new View.OnClickListener(){
public void onClick(View v){
Intent service = new Intent(CallAudio._CALL_SERVICE);
//this is for Android 1.5 (sets speaker going for a few seconds before shutting down)
stopService(service);
Intent setIntent = new Intent(Intent.ACTION_MAIN);
setIntent.addCategory(Intent.CATEGORY_HOME);
setIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(setIntent);
finish();
isRecording = false;
}
});
final Button speaker_Button = (Button) findViewById(R.id.widget36);
speaker_Button.setOnClickListener(new View.OnClickListener(){
public void onClick(View v){
if(true){
audio_service.setSpeakerphoneOn(false);
}
else{
audio_service.setSpeakerphoneOn(true);
}
}
});
}
@Override Protected void onResume () {super.onresume ();
}
@Override
protected void onPause() {
super.onPause();
}
public void onCofigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
}
}
Он называет сервис, который использует AudioRecord для записи с микрофона и AudiotRack, чтобы разыграть его из наушника, ничего в сервисе, не связанном с номероном.
Кто -нибудь есть идеи, почему это может произойти?
Решение 2
После некоторых исследований кажется, что в нем есть внедрение номерона, в нем есть некоторые ошибки, значок номерона никогда не должен появляться, так как телефон должен переоценить его.
Другие советы
Недавно использованное меню приложений не заботится о том, было ли приложение завершено. Это просто перезапускает его, если да. Он показывает вещи, которые были использованы, а не вещи, которые в настоящее время работают.