Kotlin 開發第 26 天 ActionSend ( Intent-Filter )

和 iOS 的 Share Extension 一樣, Android 也能夠將內容分享到其他 App 上面,
比如一張照片想要從自己的 App 分享到 Facebook, Line, Wechat, Weibo 等等。


Transfer Money

 

這次要準備兩個 App 其中一個負責發送資料 (ActionSend App),另外一個負責接收 (ActionRecive App)


ActionSend App

在這個 App 裡面我們需要提供一個 EditView 讓使用者可以填入金額,然後通過 Transfer 按鈕進行傳送。

Intent

就和傳送資料到另外一個 Activity 相同,我們會需要用到 Intent,並且指定資料類型和資料內容。


ActionReceive App

在這個 App 裡面,我們會將接收到的 text 顯示在畫面上(現在顯示 0 的位置)

Intent-Filter

為了能夠接收到消息,需要到 AndroidManifest.xml 中增加 intent-filter 並指定會接收的 Activity 對象

ReceiverActivity

在 onCreate 的地方,我們就能夠嘗試去接收 intent 資訊,並判斷 intent 類型。

然後將 intent 中的 text 取出來顯示到畫面上就完成了。


筆記

  • TODO: 從 App-A 分享內容到 App-B 以後,如何處理完再進行回傳的實作。
  • 概念:我從 App-A 做 intent 而 App-B 的 ReceiveActivity 接收了,
    這時我發現在 Menu 上看起來是 App-A 把 App-B 的 Activity 給載入了,
    而不是真的開啟 App-B,這邊和 iOS 就非常不同了。

參考

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *