Прием Broadcast Receiver занимает слишком много времени в onReceive () после выключения / включения режима полета
Я создал простой Broadcast Receiver, и он работает абсолютно нормально, за исключением того, что если я включаю / выключаю режим Air Plane, то для получения передаваемых сообщений с помощью метода onReceive требуется около 2 минут. Другое дело только то, что это вызывает проблему, если мы запустим приложение, а затем, если я изменю Режим полета (вкл / выкл), то получение сообщения занимает слишком много времени.
Если перед запуском приложения произошла смена режима,t влияет на время получения сообщения в методе onReceive.
Исходный код ниже.
AndroidManifest.xml
BroadcastReceiverActivity.java
public class BroadcastReceiverActivity extends Activity {
public static String qrCodeReceiver = "test.intent.action.QR_CODE_RECEIVER";
@Override
protected void onCreate(Bundle saveInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button broadcastBtn = (Button) findViewById(R.id.broadcastBtn);
broadcastBtn.setOnClickListener(new View.onClickListener(){
public void onClick(View v){
//TODO
Intent intent = new Intent();
intent.putExtra("message","Testing");
intent.setAction(qrCodeReceiver);
sendBroadcast(intent);
Log.d("Test","sendBroadcasting the message ::");
}
});
}
}
MyBroadcastReceiver.java
public class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
//TODO
Toast.makeText(context, "on receive.",Toast.LENGTH_LONG).show();
Bundle extras = intent.getExtras();
String state = extras.getString("message");
Log.d("Test", "Inside MyBroadcastReceiver onReceive() state :: "+ state);
Toast.makeText(context, state,Toast.LENGTH_LONG).show();
}
}
main.xml
Заранее спасибо.