Android スタートガイド
このガイドでは、アプリにGeniee広告SDKをインストールする手順を説明します。
インストール手順:
- 事前準備
- Mavenでライブラリを導入する
- 手動でライブラリを導入する
- マニフェストファイルの記述
事前準備
Geniee 広告SDKを使用するには、Google Play Services SDKを必ず導入する必要があります。 Google Play Services SDKの導入手順は以下の通りです。
Module>build.gradle
のdependencies
に以下を追加します。
dependencies {
implementation 'com.google.android.gms:play-services-ads:20.0.0'
}
- Google Play Services SDKを既に導入済み場合、追加は必要ありません。
- Google Developers公式サイトSetting Up Google Play Services
Project Structure
のDependencies
に追加されていることを確認します。
play-services-ads:17.0.0以降を導入する場合の注意点
play-services-ads:17.0.0を導入する場合、AndroidManifest.xml
にadmobかGoogle Ad Managerの以下のいずれかの情報を記載しなければ、アプリがクラッシュします。
- admobの情報
<manifest>
<application>
<!-- TODO: Replace with your real AdMob app ID -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-################~##########"/>
</application>
</manifest>
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
- Google Ad Managerの情報
<manifest>
<application>
<meta-data
android:name="com.google.android.gms.ads.AD_MANAGER_APP"
android:value="true"/>
</application>
</manifest>
1
2
3
4
5
6
7
2
3
4
5
6
7
admobやGoogle Ad Managerを使用しない場合
admobやGoogle Ad Managerを使用しない場合(Geniee SDKを単体で使用する場合)は、
com.google.android.gms:play-services-ads
は実装せずに、Module>build.gradle
のdependencies
に以下を追加します。
dependencies {
implementation 'com.google.android.gms:play-services-ads-identifier:{{$version.android.playServicesAdsIdentifier}}'
}
1
2
3
2
3
Mavenでライブラリを導入する(推奨)
Project>build.gradle
のallprojects>repositories
に以下を追加します。
allprojects {
repositories {
maven {
url 'http://raw.github.com/geniee-ssp/Geniee-Android-SDK/master/repository'
}
}
}
1
2
3
4
5
6
7
2
3
4
5
6
7
Module>build.gradle
のdependencies
に以下を追加します。
dependencies {
implementation 'jp.co.geniee.gnadsdk:GNAdSDK:8.5.1'
}
- 実装例
Project>build.gradle
allprojects {
repositories {
google()
jcenter()
maven { url "https://github.com/geniee-ssp/Geniee-Android-SDK/raw/master/repository" }
}
}
1
2
3
4
5
6
7
2
3
4
5
6
7
Module>build.gradle
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.1'
implementation 'com.google.android.gms:play-services-ads:20.0.0'
//Geniee SDK
implementation 'jp.co.geniee.gnadsdk:GNAdSDK:8.5.1'
}
手動でライブラリを導入する
Mavenでライブラリを導入する
の手順を実行した場合、この手順は実行する必要はありません。
手動導入手順はこちら
Geniee SDK のダウンロード
以下の URL から Geniee Android SDK をダウンロードします。
jarライブラリの配置
Geniee Android SDK を解凍します。
プロジェクトに広告SDKを追加します。
- libs フォルダーが存在しない場合、必要に応じて作成します。
- libs フォルダに GenieeAdsSDK / jar ファイルをコピーします。
GNAdSDK-<version_number>.jar
app/build.gradle
の'dependencies'に追加します。implementation files('libs/GNAdSDK-8.5.1.jar')
- 'Project Structure'の'Dependencies'に追加されていることを確認します。
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.google.android.gms:play-services-ads:{{$version.android.playServicesAds}}'
}
1
2
3
4
5
6
2
3
4
5
6
マニフェストファイルの記述
マニフェストファイル AndroidManifest.xml に必要情報を記述します。
Mavenでライブラリを導入する
,手動でライブラリを導入する
共通のマニフェストファイルの記述
- SDKが使用する Google Play Services SDK 情報を記述します。マニフェストファイルの
<application>
に記述します。
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version"/>
1
2
2
- RewardVideo以外の場合、SDKが使用する位置情報取得パーミッションを記述します。(オプション)
- 「ACCESS_COARSE_LOCATION」、「ACCESS_FINE_LOCATION」どちらか一方の記述でも問題ありません。
- 位置情報利用しない場合については記述不要です。
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
1
2
2
手動でライブラリを導入する
を実施した場合のマニフェストファイルの記述
GNAdSDK4.0.0
以降でMavenでライブラリを導入する
の手順を実行した場合、以下の手順は実行する必要はありません。
SDKが使用するアクティビティの情報を記述します。
- マニフェストファイルの
<application>
に記述します。
- Bannerの場合
<!-- Banner --> <activity android:name="jp.co.geniee.gnadsdk.banner.GNAdWebActivity" android:label="@string/app_name" android:screenOrientation="portrait"/>
1
2
3- 動画リワードの場合
動画リワード広告で記載。
- マニフェストファイルの
以下のパーミッションを記述します。
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
1
2
3