[英]How can I prevent my app from showing specific apps on startActivity()
當用戶單擊我的應用程序中的按鈕時,它應該啟動一個 SMS 應用程序。 對此,我只是發出了一個意圖。
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.fromParts("sms", "+234000000000", null));
intent.putExtra("sms_body", "Hello!"));
if (intent.resolveActivity(getActivity().getPackageManager()) != null) startActivity(intent);
這工作得很好! 唯一的問題是Facebook Messenger是出現的應用程序列表之一,我不希望這樣。
如何過濾此列表並刪除 Messenger 等特定應用?
是的,您可以限制您的應用程序僅打開 android 默認消息應用程序。
Uri uri = Uri.parse("sms:+444498494984");
Intent intent = new Intent(Intent.ACTION_SENDTO, uri);
//android sms app package name
intent.setPackage("com.google.android.apps.messaging");
intent.putExtra("sms_body", "message to send");
if (intent.resolveActivity(getPackageManager()) != null)
{
startActivity(intent);
}
它試圖讓用戶在他們最喜歡的 SMS 應用程序上做出選擇,不要忘記 Facebook Messenger 現在也可以管理 SMS,這就是它顯示為選擇的原因。 根據我的經驗,除非用戶選擇“始終”,否則無法避免。 想象一下,如果用戶有其他應用程序來管理 SMS,我們不能強迫他們使用我們首選的消息傳遞應用程序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.