iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 12
0
自我挑戰組

Android App 初學者從零開始用Kotlin寫APP系列 第 12

<Day12>Activity 在 manifest 可使用屬性

  • 分享至 

  • xImage
  •  

要使App能夠使用 Activity,必須在清單中聲明 Activity 及其特定屬性。

 <manifest ... >
   <application ... >
       <activity android:name=".ExampleActivity" />
       ...
   </application ... >
   ...
 </manifest >
屬性 android:name 用於指定 Activity class 名稱。


```
<activity android:name=".ExampleActivity" android:icon="@drawable/app_icon">
<intent-filter>
    <action android:name="android.intent.action.SEND" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="text/plain" />
</intent-filter>
</activity>
 ```
  • Intent*

此元素包括 、 或
指定該 Activity 會發送數據。 DEFAULT 需告 Activity 啟動頁面 。 指定此 Activity 可以發送的數據類型

權限申明

  <manifest>
  <activity android:name="...."
     android:permission=”com.google.socialapp.permission.SHARE_POST”

  />
  
  <manifest>
     <uses-permission android:name="com.google.socialapp.permission.SHARE_POST" />
  </manifest>
  

** Intent 傳送資料方式有提供三種方式**

  • Starting an activity:
    MainA 代表的單一畫面,可以將 Intent 傳送至 startActivity() 來啟動, Main Intent 傳遞從A到B 資料。
Intent intent = new Intent(MainAActivity.this, MainBActivity.class);
intent.putExtra("data","value");
startActivity(intent);
  • Starting a service:
    Service 是可以在背景中執行服務,沒有使用者介面。 將 Intent 傳送至 startService() 來啟動服務以 執行一次性操作 (例如下載檔案)。

  • Delivering a broadcast:
    廣播是指任何應用程式都可接收的訊息。系統會傳送各種系統事件廣播,例如系統開機或裝置開始充電。 您可以將 Intent 傳送至 sendBroadcast()、 sendOrderedBroadcast(Intent, String) 或 sendStickyBroadcast(),以向其他應用程式傳送廣播。

reference :https://developer.android.com/guide/components/intents-filters
reference :https://developer.android.com/guide/components/activities/intro-activities


上一篇
<Day11> Fragment 生命週期
下一篇
<Day13>Context
系列文
Android App 初學者從零開始用Kotlin寫APP30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言