2016-09-20 70 views
2

我使用這個方法來調用共享我的飼料數據共享意向回調結果:如何獲得

public void shareFeed() { 
     try { 
      Intent intent = new Intent(android.content.Intent.ACTION_SEND); 
      intent.setType("text/plain"); 
      intent.putExtra(Intent.EXTRA_SUBJECT, "SUB"); 
      intent.putExtra(Intent.EXTRA_TEXT, "Body"); 
      startActivityForResult(Intent.createChooser(intent, "Choose an Email client :"), 1); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 

    } 

,這裏是我的onActivityResult的代碼,但我每次都空數據無論成功或失敗:

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    if (requestCode == 1) { 
     if (resultCode == RESULT_OK) { 
     } 
    } 
} 

我想在成功後執行呼叫web服務,所以我需要共享意圖回調結果。

+0

你一些活動調用startActivityForResult你需要證明你填什麼發送NACK在活動結果 – surya

+0

這取決於天氣,你打開的應用程序並將結果發送回與否。 – kgandroid

回答

2

對於ACTION_SEND,documentation表示不生成輸出(即:不生成結果)。

4

ACTION_SEND不返回任何形式的結果。引用the documentation

輸出:什麼

有使用startActivityForResult()沒有意義的,你不會得到一個結果。

在API Level 22(Android 5.1)及更高版本的設備上,歡迎使用createChooser()變體,該變體將IntentSender作爲參數。這會讓你知道用戶從選擇器中做出的選擇。但是:

  • 這不會告訴你,如果用戶發送的任何

  • 我不認爲你發現任何東西,如果用戶只是放棄選擇器(雖然你可能會將沒有選擇爲表示放棄)