「Monaca/admob/admob-free/mediation/他」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→maven設定方法) |
(→androidの場合) |
||
| 行15: | 行15: | ||
<framework src="com.android.support:appcompat-v7:26.1.0" /> | <framework src="com.android.support:appcompat-v7:26.1.0" /> | ||
<framework src="com.android.support.constraint:constraint-layout:1.1.3" /> | <framework src="com.android.support.constraint:constraint-layout:1.1.3" /> | ||
| − | <framework src="com.google.android.gms:play-services- | + | <framework src="com.google.android.gms:play-services-gcm:17.0.0" /> |
| − | <framework src="com.google.android.gms:play-services-ads: | + | <framework src="com.google.android.gms:play-services-ads:17.0.0" /> |
| − | <framework src="com.google.android.gms:play-services-location: | + | <framework src="com.google.android.gms:play-services-location:17.0.0" /> |
| + | <framework src="com.google.android.gms:play-services-basement:17.0.0" /> | ||
<dependency id="cordova-plugin-enable-multidex" /> | <dependency id="cordova-plugin-enable-multidex" /> | ||
</platform> | </platform> | ||
2020年6月19日 (金) 16:33時点における版
目次
- 1 他色々のメディエーションを使いたい場合
- 1.1 androidの場合
- 1.1.1 以下play-services-basementのバージョン競合のエラーが発生する場合
- 1.1.2 以下facebookに絡むplay-services-basementのバージョン競合のエラーが発生する場合
- 1.1.3 以下play-services-tasksのバージョン競合のエラーが発生する場合
- 1.1.4 以下gms:play-services-basementのバージョン競合が発生するとき
- 1.1.5 以下Zucksエラーが起こるとき
- 1.1.6 以下maioエラーが起こるとき
- 1.1.7 basementの競合エラーのとき
- 1.1.8 tasksの競合エラーのとき
- 1.1.9 transformClassesWithDexBuilderForDebugエラーが出るとき
- 1.1.10 build-extras.gradleのgoogleについて
- 1.2 iosの場合
- 1.1 androidの場合
他色々のメディエーションを使いたい場合
androidの場合
androidでは以下をplugin.xmlに追加する
<platform name="android">
<framework src="build-extras.gradle" custom="true" type="gradleReference"/>
<framework src="com.unity3d.ads:unity-ads:+" />
<framework src="com.google.ads.mediation:unity:+" />
<framework src="com.facebook.android:audience-network-sdk:+" />
<framework src="com.google.ads.mediation:facebook:+" />
<framework src="net.nend.android:nend-sdk:5.4.2" />
<framework src="com.google.ads.mediation:nend:+" />
<framework src="com.android.support:appcompat-v7:26.1.0" />
<framework src="com.android.support.constraint:constraint-layout:1.1.3" />
<framework src="com.google.android.gms:play-services-gcm:17.0.0" />
<framework src="com.google.android.gms:play-services-ads:17.0.0" />
<framework src="com.google.android.gms:play-services-location:17.0.0" />
<framework src="com.google.android.gms:play-services-basement:17.0.0" />
<dependency id="cordova-plugin-enable-multidex" />
</platform>
以下play-services-basementのバージョン競合のエラーが発生する場合
> Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.
> Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
> Could not resolve com.google.android.gms:play-services-basement:[15.0.1,16.0.0).
Required by:
project :app > com.google.android.gms:play-services-location:15.0.1
project :app > com.google.android.gms:play-services-places-placereport:15.0.1
> Failed to list versions for com.google.android.gms:play-services-basement.
おそらくversionが競合してるので、以下のように、15.0.1にするとか
<framework src="com.google.android.gms:play-services-basement:15.0.1" />
以下facebookに絡むplay-services-basementのバージョン競合のエラーが発生する場合
> Could not resolve com.google.android.gms:play-services-basement:11.0.4.
Required by:
project :app > com.facebook.android:audience-network-sdk:5.9.0
> Cannot find a version of 'com.google.android.gms:play-services-basement' that satisfies the version constraints:
Dependency path 'android:app:unspecified' --> 'com.google.android.gms:play-services-basement:15.0.1'
facebookのadがbasement:11.0.4を呼び出していて、versionが競合してるので、以下facebookを一旦削除する
<!-- <framework src="com.facebook.android:audience-network-sdk" /> -->
以下play-services-tasksのバージョン競合のエラーが発生する場合
> Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.
> Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
> Could not resolve com.google.android.gms:play-services-tasks:[15.0.1,16.0.0).
Required by:
project :app > com.google.android.gms:play-services-location:15.0.1
> Failed to list versions for com.google.android.gms:play-services-tasks.
おそらくversionが競合してるので、以下のように、15.0.1にするとか
<framework src="com.google.android.gms:play-services-tasks:15.0.1" />
以下gms:play-services-basementのバージョン競合が発生するとき
> Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
> Could not resolve com.google.android.gms:play-services-basement:[15.0.1,16.0.0).
Required by:
project :app > com.google.android.gms:play-services-gcm:15.0.1
project :app > com.google.android.gms:play-services-location:15.0.1
project :app > com.google.android.gms:play-services-iid:15.0.1
project :app > com.google.android.gms:play-services-places-placereport:15.0.1
もしplay-service系で例えば、1つでも17.0.0があれば、そちらに合わせてみる。
修正前
<framework src="com.google.android.gms:play-services-gcm:15.0.1" /> <framework src="com.google.android.gms:play-services-ads:15.0.1" /> <framework src="com.google.android.gms:play-services-location:15.0.1" /> <framework src="com.google.android.gms:play-services-tasks:15.0.1" />
修正後
<framework src="com.google.android.gms:play-services-gcm:17.0.0" /> <framework src="com.google.android.gms:play-services-ads:17.0.0" /> <framework src="com.google.android.gms:play-services-location:17.0.0" /> <framework src="com.google.android.gms:play-services-tasks:17.0.0" />
maven設定方法
plugin.xml
<platform name="android">
<framework src="build-extras.gradle" custom="true" type="gradleReference"/>
</platform>
build-extras.gradle
ext.postBuildExtras = {
allprojects {
repositories {
maven {
url "https://maven.google.com"
}
jcenter()
maven {
url 'http://fan-adn.github.io/nendSDK-Android-lib/library'
}
maven {
url 'https://github.com/zucks/ZucksAdNetworkSDK-Maven/raw/master'
}
maven{
url "https://imobile-maio.github.io/maven"
}
maven {
url "https://adcolony.bintray.com/AdColony"
}
}
}
android {
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
configurations.all {
resolutionStrategy {
force 'com.android.support:support-v4:26.+'
}
}
}
以下Zucksエラーが起こるとき
Could not determine the dependencies of task ':app:preDebugBuild'. > Could not resolve all task dependencies for configuration ':app:debugRuntimeClasspath'. > Could not find net.zucks:zucks-ad-network-sdk:4.6.1.
gradleに以下を追加
maven {
url 'https://github.com/zucks/ZucksAdNetworkSDK-Maven/raw/master/'
}
以下maioエラーが起こるとき
Could not determine the dependencies of task ':app:preDebugBuild'. > Could not resolve all task dependencies for configuration ':app:debugRuntimeClasspath'. > Could not find com.maio:android-sdk:1.1.6.
gradleに以下を追加
maven{
url "https://imobile-maio.github.io/maven"
}
basementの競合エラーのとき
Could not determine the dependencies of task ':app:preDebugBuild'.
> Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
> Could not resolve com.google.android.gms:play-services-basement:[15.0.1,16.0.0).
plugin.xmlに以下のようにバージョンを15.0.1へ
<framework src="com.google.android.gms:play-services-basement:15.0.1" />
tasksの競合エラーのとき
> Could not resolve com.google.android.gms:play-services-tasks:[15.0.1,16.0.0).
Required by:
project :app > com.google.android.gms:play-services-location:15.0.1
> Failed to list versions for com.google.android.gms:play-services-tasks.
plugin.xmlに以下のようにバージョンを15.0.1へ
<framework src="com.google.android.gms:play-services-tasks:15.0.1" />
transformClassesWithDexBuilderForDebugエラーが出るとき
以下エラーが出るとき
Task :app:transformClassesWithDexBuilderForDebug
androidxとandroid.supportとの競合的な( https://translate.google.com/translate?sl=en&tl=ja&u=https://github.com/flutter/flutter/issues/25271 ) 情報があったので、android.supportを切ってみる。
build-extras.gradle
configurations.all {
resolutionStrategy {
// force 'com.android.support:support-v4:26.+'
}
}
後は、以下のようにandroid.supportをandroidxへ
修正前
<framework src="com.android.support:appcompat-v7:26.1.0" />
<framework src="com.android.support.constraint:constraint-layout:1.1.3" />
修正後
<framework src="androidx.appcompat:appcompat:1.1.0" />
<framework src="androidx.constraintlayout:constraintlayout:1.1.3" />
<framework src="androidx.cardview:cardview:1.0.0" />
<framework src="androidx.percentlayout:percentlayout:1.0.0" />
うーん・・。解決できず。 結局、transformClassesWithDexBuilderForDebugの後のメッセージで判別するしないと、対応方法が変わってくるので、メッセージが、これだけだと無理かも。
build-extras.gradleのgoogleについて
以下2つは同じ、切り替えても問題なかった。
maven {
url "https://maven.google.com"
}
google()
iosの場合
plugin.xmlに追加
<platform name="ios">
<pods use-frameworks="true">
<pod name="GoogleMobileAdsMediationUnity" spec="~> 3.1"/>
<pod name="GoogleMobileAdsMediationFacebook" spec="~> 5.4" />
<pod name="GoogleMobileAdsMediationNend" spec="~> 5.4.1.0" />
</pods>
</platform>
表示はできてない・・
