簡體   English   中英

Android編程-始終重新啟動相同的意圖

[英]Android Programming - Always Restarts same Intent

我正在將Android Studio用於一個簡單的通訊應用程序,這肯定是一個愚蠢的問題,但我還沒有找到答案。

我只是在單擊按鈕時開始一個新的意圖。 但是,在用戶第一次執行此操作時,系統會詢問他要使用哪種應用程序。 因此,至少有兩個應用程序具有相同的意圖過濾器,即“ ACTION_VIEW”

我的問題:

首次單擊后,按鈕始終“重用”他的初始選擇,因此用戶不再具有要使用該應用程序的決定。 不幸的是,這正是我想要的。 每次單擊按鈕時,用戶應有機會選擇自己喜歡的應用。

代碼的相關部分很簡單,如下所示:

String uri = String.format(Locale.ENGLISH, "geo:%f,%f", latitude, longitude);
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));
startActivity(intent);

Intent.FLAG_UPDATE_CURRENT可能會為您提供幫助。

https://developer.android.com/reference/android/app/PendingIntent.html

您可以使用應用選擇器顯示對話框,以供用戶選擇每次使用的應用:

[i]如果要執行的操作可以由多個應用處理,並且用戶每次可能都希望使用一個不同的應用,例如“共享”操作,為此用戶可能有多個應用可以共享一個項目,您應該顯式顯示一個選擇器對話框...。選擇器對話框強制用戶每次選擇用於操作的應用程序(用戶無法為該操作選擇默認應用程序)。

Intent intent = new Intent(Intent.ACTION_SEND);
...

// Always use string resources for UI text.
// This says something like "Share this photo with"
String title = getResources().getString(R.string.chooser_title);
// Create intent to show chooser
Intent chooser = Intent.createChooser(intent, title);

// Verify the intent will resolve to at least one activity
if (intent.resolveActivity(getPackageManager()) != null) {
    startActivity(chooser);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM