我已经构建了一个小应用程序。它唯一能做的就是接听拨出电话并在发生时展示一些活动。只有Activity
和BroadcastReceiver
。
我想将我的代码与另一个应用程序集成,我从Manifest.xml
中删除了BroadcastReceiver,并从主活动中动态创建(并注册)了它。我的接收器发射良好,但活动没有显示出来。
这两种方法有什么区别?
如何让活动显示?
来自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"/>
答案 0 :(得分:1)
我在两个主题中找到了答案: