Android Getting Started SDK8
簡介
- TAmedia SDK提供Android Mobile App開發者簡易迅速的方式整合行動App廣告, 廣告的種類包含
- Banner
- Interstitial
- InRead Anchor
- Native
系統需求
- Android 6.0以上 (API Level 23+)
SDK說明文件
APP專案整合SDK
請按照下列方式設置專案
Step 1: 將SDK放入app專案的libs資料夾
- 請至下載 Download SDK下載SDK,並將壓縮檔內的AAR檔放至專案的libs資料夾, 若無libs資料夾請自行建立
Step 2-1: 編輯app專案中build.gradle
- 請加入TAmedia SDK aar與下列相依性函式庫
- retrofit
- ads identifier
- gson
- appset
- jetpack security-crypto
- activity-ktx
MADP SDK 8.0.6 (Kotlin 1.8.x ~ 1.9.22)
dependencies {
// =======================================================================//
// MADP library
// =======================================================================//
implementation files('libs/adpmobile-lib-r8.0.0.aar')
implementation files('libs/omsdk-android-1.3.37-release.aar')
// =======================================================================//
// MADP library dependencies
// =======================================================================//
// retrofit
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
implementation 'com.squareup.retrofit2:converter-scalars:2.9.0'
// google ads identifier
implementation 'com.google.android.gms:play-services-ads-identifier:17.0.1'
// google app set id
implementation 'com.google.android.gms:play-services-appset:16.0.1'
// gson
implementation 'com.google.code.gson:gson:2.8.6'
// Jetpack Security
implementation 'androidx.security:security-crypto:1.1.0-alpha03'
// activity-ktx
implementation 'androidx.activity:activity-ktx:1.9.3'
}MADP SDK 8.0.7 / 8.0.8 (Kotlin 2.0.0+) 
dependencies {
// =======================================================================//
// MADP library
// =======================================================================//
// 8.0.7 請改用 adpmobile-lib-r8.0.7.aar
implementation files('libs/adpmobile-lib-r8.0.8.aar')
implementation files('libs/omsdk-android-1.3.37-release.aar')
// =======================================================================//
// MADP library dependencies
// =======================================================================//
// retrofit
implementation 'com.squareup.retrofit2:retrofit:3.0.0'
implementation 'com.squareup.retrofit2:converter-gson:3.0.0'
implementation 'com.squareup.retrofit2:converter-scalars:3.0.0'
// google ads identifier
implementation 'com.google.android.gms:play-services-ads-identifier:18.2.0'
// google app set id
implementation 'com.google.android.gms:play-services-appset:16.1.0'
// gson
implementation 'com.google.code.gson:gson:2.13.2'
// Jetpack Security(僅 8.0.7 需要,8.0.8 起請移除此行)
implementation 'androidx.security:security-crypto:1.1.0'
// activity-ktx
implementation 'androidx.activity:activity-ktx:1.11.0'
}權限設定
- Required Permission
<!-- TAmedia Required Permission --> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
- Optional Permission
<!-- TAmedia Optional Permission --> <uses-permission android:name="android.permission.VIBRATE" /> <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.RECORD_AUDIO" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
高權限功能開關(8.0.8 起) 
8.0.8 起,廣告素材透過 WebView JS bridge 使用麥克風、相機、行事曆、閃光燈這四項功能前,必須由 App 端主動開啟對應的開關。四個開關預設皆為關閉,未開啟時 SDK 會忽略素材的呼叫。
開關 API
| 功能 | 開啟 | 查詢 |
|---|---|---|
| 麥克風 | TWMMobileAds.setMicrophoneEnabled(boolean) |
TWMMobileAds.isMicrophoneEnabled()
|
| 相機 | TWMMobileAds.setCameraEnabled(boolean) |
TWMMobileAds.isCameraEnabled()
|
| 行事曆 | TWMMobileAds.setCalendarEnabled(boolean) |
TWMMobileAds.isCalendarEnabled()
|
| 閃光燈 | TWMMobileAds.setFlashlightEnabled(boolean) |
TWMMobileAds.isFlashlightEnabled()
|
使用範例
以麥克風互動素材為例,在承載該素材的 Activity 進入時開啟,離開時關閉:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 本頁會投放需要麥克風互動的素材
TWMMobileAds.setMicrophoneEnabled(true);
}
@Override
protected void onDestroy() {
TWMMobileAds.setMicrophoneEnabled(false);
super.onDestroy();
}闔家適用計畫 / 兒童導向應用程式
- 本SDK的相依套件
play-services-ads-identifier已於其manifest中宣告AD_ID權限,manifest合併後會自動出現在您的應用程式中。
- 若您的應用程式屬於 闔家適用計畫,或為兒童導向應用程式,請於AndroidManifest.xml中加入下列設定,移除AD_ID使用權限
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<uses-permission android:name="com.google.android.gms.permission.AD_ID" tools:node="remove"/>- 註:targetSdk 33 (Android 13) 以上的應用程式,使用廣告ID時必須宣告AD_ID權限;未宣告時廣告ID會被置換為全為零的字串。此為Android 13起的規則,與SDK版本無關。
詳情可參考Google網站說明:
2021 年 Google Play 服務更新
Google Play Policy - 家庭

