我正在尝试将拨出电话重定向到 Android设备上的其他电话号码.所以,我使用BroadcastReceiver"监听"NEW_OUTGOING_CALL意图,在他的onReceive()方法上我使用setResultData()方法来改变电话号码.
像这样:
public void onReceive(Context arg0, Intent arg1) {
setResultData("351978923221");
}
Run Code Online (Sandbox Code Playgroud)
在模拟器中一切顺利,但在我的真实设备上(我认为是一款蹩脚的ZTE X850与Android 2.1相比)如果调用Intent来自同一个应用程序的一部分Activity,则不会.出现拨号屏幕后,电话将终止呼叫.
关于为什么会发生这种情况的任何想法?
注意:我知道我的问题与此问题基本相同,但无论如何我选择再次询问它以提供有关错误的其他详细信息.
清单文件
摘录......
<receiver android:name=".OutgoingCallDetection" android:exported="true">
<intent-filter>
<action android:name="android.intent.action.NEW_OUTGOING_CALL"
android:priority="9999" />
</intent-filter>
</receiver>
</application>
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
Run Code Online (Sandbox Code Playgroud) 当用户在警告对话框中选择一个项目时,我需要启动一个活动.如何在上面的代码中将上下文传递给intent构造函数...
builder.setItems(items, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
Intent i = new Intent(<WHAT DO I PUT HERE?>, <new activity>.class);
startActivity(i);
}
});
Run Code Online (Sandbox Code Playgroud)
它是内部类的使用吗?有什么想法吗?