2010-07-15 72 views
1

是否可以在自己編寫的活動中打開默認的Android消息傳遞活動?例如:我在我的程序中按下「Mail」按鈕,它會打開Android Messaging應用程序,就好像我正在按主屏幕上的Messaging圖標一樣。從活動訪問Android收件箱/消息傳遞?

我做類似這樣與聯繫人活動的東西,但只有聯繫人列表中出現,比如添加/修改/刪除沒有多餘的功能,等等。

任何想法?

編輯:我發現這種方式來打開「撰寫新消息」活動,我只需要支持它一步。有誰知道正確的MIME類型而不是這個?

Intent sendIntent = new Intent(Intent.ACTION_VIEW); 
sendIntent.setType("vnd.android-dir/mms-sms"); 
m_activity.startActivity(sendIntent); 

回答

3

這從另一個應用程序啓動短信應用:

Intent intent = new Intent("android.intent.action.MAIN"); 
intent.setComponent(new ComponentName("com.android.mms","com.android.mms.ui.ConversationList")); 
startActivity(intent); 

只要把一個按鈕偵聽,或者您想從打開任何用戶輸入內。

享受:-)

+0

甜的感謝,是有名單這些,所以我可以檢查其他應用程序運行?就像聯繫人活動一樣,再次感謝! – gooner15 2010-07-16 14:19:48

+1

如果您運行logcat並啓動您希望從自己的應用程序啓動的程序,則可以看到啓動程序運行的啓動應用程序的目的。 – Rasmus 2010-07-16 15:10:42

+0

在ComponentName構造函數的第一個參數上指定的包不應該是「com.android.mms.ui」? – 2010-07-16 18:14:50

0

如果你想打開短信應用,查看郵件,而不是發送消息,這應該做的工作:

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.addCategory(Intent.CATEGORY_LAUNCHER); 
intent.setPackage("com.google.android.apps.messaging"); 
startActivity(intent);