Moe大家都有耳聞吧,一直沒找到關(guān)于admob的教程,今天我來寫一篇關(guān)于MOE加admob的教程。PS: MOE自動生成java綁定 爽得很。
1.下載admob的sdk
https://dl.google.com/googleadmobadssdk/googlemobileadssdkios.zip?hl=zh-CN
把它保存在桌面
2.生成admob綁定
在ios-moe項目上右鍵->link framework

Paste_Image.png
然后把admob的framework路徑填入

Paste_Image.png
ok,成功!可以在lib文件夾里面看到綁定了。oh!還不行 需要在主工程的build.gradle里面加入以下文字
project(":ios-moe") {
apply plugin: "moe" configurations { natives }
dependencies {
compile project(":core")
compile "com.badlogicgames.gdx:gdx-backend-moe:$gdxVersion"
natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios"
natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-ios"
compile fileTree(dir: 'lib', include: '*.jar')
}
}
然后

Paste_Image.png
這個時候終于可以看到綁定的類了,爽歪歪!不用像robovm那樣手動寫綁定了

Paste_Image.png
3.在xcode里面配置admob的依賴
同樣是右鍵ios-moe->open xcode

Paste_Image.png
在xcode里面加把之前下載的admob的framework拖進(jìn)xocde項目

Paste_Image.png

Paste_Image.png
然后加入依賴,大概有這些東西:
AdSupport,AudioToolbox,AVFoundation,CoreBluetooth,CoreGraphics,CoreMedia,CoreMotion,CoreTelephony,CoreVideo,EventKit,EventKitUI,Foundation,GLKit,MediaPlayer,MessageUI,OpenGLES,SafariServices,StoreKit,SystemConfiguration,UIKit MobileCoreServices

Paste_Image.png
繼續(xù)加入-Objc(debug和release里面都要加入-ObjC)
Project in Xcode: Build Setting -> Linking -> Other Linker Flags -> Debug (add -ObjC) -> Release (add -ObjC)
Paste_Image.png
4.配置混淆選項
編輯progaurd.cfg(ios-moe/progaurd.append.cfg):
-keep class com.intel.googlemobileads.** { *; }
-keep enum com.intel.googlemobileads.** { *; }
5.盡情玩耍

Paste_Image.png

admob的廣告
6.IPA打包
在命令行里面運行
./gradlew moeIpaBuild

Paste_Image.png

Paste_Image.png
關(guān)于減少ipa的體積
通過和moe官方交流了下 終于解決了,升級到1.2.4
classpath 'org.multi-os-engine:moe-gradle:1.2.4'
在ios-moe的build.gradle里面添加如下代碼:
moe {
proguardLevel 'all'
......
}
然后在proguard.append.cfg中添加
-keep class apple.uikit.protocol.** { *; }
可以減少將近13M
#運行環(huán)境
gdxVersion = '1.9.5-SNAPSHOT'
MOE隱藏狀態(tài)欄
在ios-moe/xocde/ios-moe/Info.Plist添加
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>