Несколько намерений запускаются потоком, изменяющимся в зависимости от устройств, для которых нужно запустить только одно намерение.
Thread thread = new Thread(new Runnable(){
@Override
public void run() {
try{
Intent i = new Intent(this, Result.class);
startActivity(i);
}catch (Exception e){
Log.d("MyClient.java", "Problem in Thread :- " + e);
final String error = e.toString();
new Handler(Looper.getMainLooper()).post(new Runnable() {
@Override
public void run() {
new AlertDialog.Builder(this).setTitle("Some Error Occured").setMessage(""+error).setPositiveButton(android.R.string.ok, listener).setCancelable(false).create().show();
}
});
}
}
});
thread.start();
Что я хочу и должно произойти, так это то, что Намерение я должен быть запущен только один раз, но вместо этого: -
- 3 новых намерения запущены в Galaxy S8 + (под управлением Oreo 8.0) и Redmi 6 Pro (под управлением Oreo 8.1.0)
- 2 новых намерения запущены в Moto E4 Plus (под управлением Nougat 7.1)
- только одно намерение запускается в LD_Player (эмулятор под управлением Lollipop 5.1.1) и Galaxy S5 (под управлением Marshmallow 6.0.1)