那是因爲你有Skype作爲默認的通話應用程序。這是一個設備配置。你可以改變它,但是請注意,如果你這樣做,它會改變這種結果,所以Skype不會再成爲手機中的默認設置。
您可以清除默認的應用程序調用此表格活動
getPackageManager().clearPackagePreferredActivities(PACKAGENAME);
的Skype的包名是com.skype.raider,所以你的情況,你把這個
getPackageManager().clearPackagePreferredActivities("com.skype.raider");
當然
你打電話給你之前打電話給startActivity
UPDATE
我記得如果你不想重置默認配置,你可以嘗試強制一個應用程序來處理你發送給startActivity的意圖。但是你有一個問題,你將不得不知道應用程序的包名稱以及應該處理它的活動。在某些情況下,很容易發現,但在其他情況下則不會。我一直在搜索這個默認的Android撥號器的信息,也看着我的設備,但我沒有找到任何東西。無論如何,如果你能找到它,你可以使用下面的代碼,它會好很多,因爲它不會改變任何設置。你也可以記住它,因爲它可以在其他情況下得心應手:
Intent intent = new Intent();
intent.setComponent(new ComponentName("PACKAGE_NAME","PACKAGENAME.ACTIVITY_NAME"));
intent.setAction("android.intent.action.VIEW");
intent.addCategory("android.intent.category.BROWSABLE");
Uri uri = Uri.parse(url);
intent.setData(uri);
try
{
startActivity(intent);
}
catch (Exception e)
{
e.printStackTrace();
}
嗨Saleh,我正在努力整合USSD與我的應用程序。你知道是否有可能以編程方式發送數據?例如,像用戶ID一樣。謝謝 – lisovaccaro