Я пытаюсь перенаправить исходящие вызовы на другой номер телефона на устройстве Android. Итак, я использую BroadcastReceiver, «слушающий» для намерения NEW_OUTGOING_CALL, в его методе onReceive () я использую метод setResultData (), чтобы изменить номер телефона.
Как это:
public void onReceive(Context arg0, Intent arg1) {
setResultData("351978923221");
}
В эмуляторе все идет хорошо, но на моем реальном устройстве (дурацкий 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" />