無法在我的應用程序堆棧中啓動默認的短信活動。問題見於nexus 6棒棒糖和android一款棉花糖。Whatsapp喜歡通過短信實現邀請,只是短信,而不是通過意向選擇器
我試圖發送ACTION_VIEW的意圖,並設置smsto:和短信體。
我可以啓動短信應用程序。
我有我的應用程序的以下行爲。
我在我的應用程序聯繫號碼列表
當用戶說邀請,我想啓動默認的短信應用,填寫並短信身體和默認的短信應用應該是在我的活動任務。
在逼人退,我要關閉消息應用程序。
請參考下面 1.參考圖像我的應用程序邀請 2.邀請,推出短信
send sms, press back, check recent app list
我能做到什麼。 我能夠在kitkat中實現上面提到的。 (默認短信應用程序完成) 但不是在棒棒糖和棉花糖。默認的短信應用程序進入後臺。
- 啓動默認的短信應用和數據填寫。
- 按下後,消息傳遞應用程序將轉到後臺。
- 現在我將能夠從最近的應用程序列表中啓動短信應用程序,該應用程序列表再次使用相同的數字和正文填充收件人,這不是本意的。
問題是,應用程序在新的活動任務中啓動。我無法在我的活動任務中獲得該消息傳遞應用程序。如果我按回這個消息應用程序,我可以回到我的應用程序。但是,如果我從最近列表中選擇消息應用程序,它會每次顯示短信收件人和正文填充活動。
請在下面找到
private void sendTextMessage(String to)
{
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) // At least KitKat
{
String defaultSmsPackageName = Telephony.Sms.getDefaultSmsPackage(mActivity); // Need to change the build to API 19
Logger.log_error(TAG + "sendTextMessage() above KITKAT");
Intent sendIntent = new Intent(Intent.ACTION_SEND);
sendIntent.setType("text/plain");
sendIntent.putExtra("address", to);
sendIntent.putExtra("sms_body", "sms body");
sendIntent.putExtra(Intent.EXTRA_TEXT, "sms body");
if (defaultSmsPackageName != null)// Can be null in case that there is no default, then the user would be able to choose
// any app that support this intent.
{
sendIntent.setPackage(defaultSmsPackageName);
Logger.log_error(TAG + "sendTextMessage() defaultSmsPackageName = " + defaultSmsPackageName);
}
getContext().startActivity(sendIntent);
}
else // For early versions, do what worked for you before.
{
Intent smsIntent = new Intent(android.content.Intent.ACTION_VIEW);
Logger.log_error(TAG + "sendTextMessage() below KITKAT");
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.putExtra("address", to);
smsIntent.putExtra("sms_body", getString(R.string.str_share_app_short_text));
startActivity(smsIntent);
}
}
的代碼片段發射的這種方式與消息應用程序搞亂。
我曾嘗試推出的意圖,沒有歷史,單一實例,排除最近用過。
僅供參考我附上了WhatsApp的截圖,其中我想在我的活動。 我無法發佈超過2個鏈接堆棧溢出,所以只保留最近的應用程序列表。
- 啓動whatsapp,進入聯繫人,向下滾動,尋找邀請綠色 並邀請。
- 它將推出短信應用程序。
- 檢查最近。
我建議你看看https://fabric.io/kits/android/branch和https://firebase.google.com/docs/invites/android以獲得更好的跟蹤。 –