0
我希望在用戶進行特定呼叫時激活我的應用程序。有沒有什麼方法可以在同一時間接收用戶撥打的信息(不是後綴),以便在正確的時間激活應用程序?如何訪問移動用戶呼叫?
好吧,我寫了這個代碼,我的情況和它的作品:
public class OutgoingCallReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();
if(null == bundle) return;
String phonenumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
if(phonenumber.equals("11111111")) {
Intent myactivity = new Intent(context, MyKeyboard.class);
myactivity.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(myactivity);
}
}
}
在清單我補充一點:
<receiver
android:name=".OutgoingCallReceiver"
android:enabled="true">
<intent-filter>
<action android:name="android.intent.action.NEW_OUTGOING_CALL"/>
</intent-filter>
</receiver>
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
這可以通過兩種方式完成,並且相對容易實施,但是由於您不清楚自己實際需要做什麼,因此無法提供準確的答案。您可以註冊您的一個活動,以便在引發意向提示時進行調用,或者您可以創建一個廣播接收器來監聽意圖,並從中獲取電話號碼,但是您的應用程序需要已經在運行第二種方法工作。 – 2012-04-25 12:56:54
感謝您的回答。我使用了廣播接收器,但是我不確定這種方式是否正確。 – saloufa 2012-04-26 11:09:36