Я создал небольшое приложение. Единственное, что он делает, - поймать исходящий звонок и показать некоторую активность, когда это произойдет. Существует только Activity
и BroadcastReceiver
.Начало деятельности в BroadcastReceiver
Я хотел интегрировать свой код с другим приложением, я удалил BroadcastReceiver из Manifest.xml
и создал (и зарегистрировал) его динамически из основного действия. Мой приемник хорошо стрелял, но активность не появляется.
В чем разница между двумя методами?
Как я могу активировать активность?
из MainActivity.java
:
callInterceptor = new InterceptOutgoingCall();
IntentFilter callInterceptorIntentFilter = new IntentFilter("android.intent.action.NEW_OUTGOING_CALL");
callInterceptorIntentFilter.setPriority(100);
registerReceiver(callInterceptor, callInterceptorIntentFilter);
и от функции receiver.onReceive(Context,Intent)
:
Intent alertIntent = new Intent(context, AlertActivity.class);
alertIntent.putExtra("callnumber", phonenbr);
alertIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(alertIntent);
моя деятельность объявлена в manifest
, как это:
<activity android:name=".AlertActivity"
android:screenOrientation="portrait"/>