#android #android-intent #phone-call
#Android #android-намерение #телефонный звонок
Вопрос:
Я разрабатываю приложение, которое изменит пользовательский интерфейс экрана вызова в ОС Android. Теперь я знаю, что я не могу заменить пользовательский интерфейс, я могу наложить на него свою пользовательскую активность. Итак, это то, что я пытался сделать.
Я могу получить намерение с помощью android.intent.action.PHONE_STATE
состояния вызова, и это работает нормально, однако, когда я запускаю свою собственную активность, она переходит в фоновый режим, и ее заменяет собственный пользовательский интерфейс Android. Есть ли способ это изменить? Я не хочу этого делать Thread.sleep()
(хотя в качестве последнего средства мне, возможно, придется).
Вот код:
Манифест Android:
<receiver android:name=".callIntentReceiver">
<intent-filter >
<action android:name="android.intent.action.PHONE_STATE"/>
</intent-filter>
</receiver>
callIntentReceiver.java:
public class callIntentReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Log.e("SmartCaller","Working sort of");
Intent intent = new Intent(context, mainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK |
Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
context.startActivity(intent);
}
}