开发了第一款Unity3D游戏后,想在上面接入广告赚点小钱,于是就在网上搜索如何接入百度移动广告。由于自己的经验不足,导致折腾了很久才将广告接入成功。下面就详细介绍下百度接入流程及注意事项。
一、下载百度Unity插件
百度移动广告SDK插件地址 http://github.com/unity-plugins/BaiDu-Unity-Plugin
二、把BaiduUnityPlugin.unitypackage插件包导入Unity工程(在这里我建议先新建一个新的工程,我直接在开发完成的项目中接入就绕了不少弯)
1、打开Unity工程,Assets -> Import Package -> Custom Package,导入刚才下载的BaiduUnityPlugin.unitypackage插件包
2、将BaiDu-Unity-Plugin-master\Assets目录下baidudemo.cs文件挂载到Main Camera
三、编译运行工程
1、修改AndroidManifest.xml包名
这里以com.Tengen.GreedySnake为准,实际项目修改为自己的包名
2、File -> Build Settings 选择Android平台,选择player settings设置平台属性,还有注意的一点是选择Other Settings修改Bundle Identifier为com.Tengen.GreedySnake(该值为包名,跟AndroidManifest.xml中的包名一致),然后点击Build生成apk安装到手机上
3、安装到手机上后运行点击按钮,如果无法展示广告,则要继续修改AndroidManifest.xml文件如下
<application> <meta-data android:name="BaiduMobAd_APP_ID" android:value="bed5321d" /> <!-- 非信息广告必须添加 --> <activity android:name="com.baidu.mobads.AppActivity" android:configChanges="keyboard|keyboardHidden|orientation" android:theme="@android:style/Theme.Translucent.NoTitleBar" /> <activity android:name="com.unity3d.player.UnityPlayerActivity" android:label="activetitle" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application>
修改位置:
ad.initBaidu("bed5321d", "2469314", "2469328", "video id");
第一个参数是应用ID,第二个是横幅ID,第三个是插屏ID(实际项目以自己申请的ID为准),修改位置如下:
3、重新Build安装apk,如果还不行,结束该apk进程,重新打开,正常显示广告如下图
四、其他注意事项
1、发现生成的apk图标和名称activetitle都不是我们想要的,修改AndroidManifest.xml如下
2、最后完整的AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <!-- This Google Mobile Ads plugin library manifest will get merged with your application‘s manifest, adding the necessary activity and permissions required for displaying ads. --> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.Tengen.GreedySnake" android:versionName="1.0" android:versionCode="1"> <uses-sdk android:minSdkVersion="9" android:targetSdkVersion="19" /> <!-- Google Mobile Ads Permissions --> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <!-- Uncomment to add billing for in-app purchase ads --> <!--<uses-permission android:name="com.android.vending.BILLING"/> --> <application android:icon="@drawable/app_icon" android:label="@string/app_name"> <meta-data android:name="BaiduMobAd_APP_ID" android:value="bed5321d" /> <!-- 非信息广告必须添加 --> <activity android:name="com.baidu.mobads.AppActivity" android:configChanges="keyboard|keyboardHidden|orientation" android:theme="@android:style/Theme.Translucent.NoTitleBar" /> <activity android:name="com.unity3d.player.UnityPlayerActivity" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
3、至此成功接入百度移动广告。参考http://bbs.51cto.com/thread-1317942-1.html。
Unity3D学习笔记(一)接入百度移动广告(Android详细讲解)
原文地址:http://wty530.blog.51cto.com/3238860/1762299