簡體   English   中英

在Xamarin.Android中調用Intent.CreateChooser時獲取PackageName

[英]Get PackageName when Intent.CreateChooser invoked in Xamarin.Android

我編寫了一個Intent,用於與所選應用程序共享一些文本,我想獲取該特定所選應用程序的程序包名稱。

public void ShareText(string text)
        {
            Intent sharingIntent = new Intent(Intent.ActionSend);
            sharingIntent.SetType("text/plain");
            sharingIntent.PutExtra(Intent.ExtraText, text);
            StartActivityForResult(Intent.CreateChooser(sharingIntent, "Share via"),555);
        }

我在OnActivityResult中得到null

    protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
    {
    if(requestCode == 555)
       {
          // data is null
       }
    }

我怎么得到這個?

正如我們在Chrome移動應用中看到的那樣。 在此處輸入圖片說明

意圖為空

我想獲取該特定選定應用程序的程序包名稱。

它完全取決於用戶所做的選擇,以及該選擇是否提供任何返回Intent

因此,例如,該應用共享一些純文本,用戶選擇:

  • Clipboard

    • 返回的意圖將為null
  • Google Drive

    • 返回的意圖將包含來自GDrive的URI:

      • 即com.google.android.apps.docs.storage.legacy.XXXXXX
  • Google Mail

    • 返回的為空

等等...

暫無
暫無

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

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