怎么在unity admob3d里添加admob广告

查看:853|回复:1
1.下载到插件
2.选择admob unity3d插件包AdmobUnityPlugin.unitypackage,导入导unity3d项目中,导入的时候选择全部文件
3.创建unity3d脚本文件并把脚本拖到场景上的物体上,注意物体必须是一直在场景中的,中途会被移掉的物体会导致后面广告添加失败
4.插入初始化admob的代码,设置admob广告id复制内容到剪贴板代码:& & Admob.Instance().initAdmob(&admob banner id&, &admob interstitial id&);5.请求加载admob全屏广告复制内容到剪贴板代码:Admob.Instance().loadInterstitial();6.在合适的时机展示插屏广告,例如游戏结束或者游戏暂停的时候,注意在游戏启动的时候展示广告容易被admob封号复制内容到剪贴板代码:if (Admob.Instance().isInterstitialReady()) {& && &Admob.Instance().showInterstitial();& & }7.每次展示完后需要重新请求admob广告
8.编译unity3d 项目为ios xcode工程,然后通过xcode打开unity3d项目,把admob项目库GoogleMobileAds.framework添加到工程中,并添加admob所依赖的框架
AdSupport.framework,EventKit.framework,
EventKitUI.framework,
CoreTelephony.framework,
StoreKit.framework,
MessageUI.framework
unity3d ios项目添加admob就完成了,直接编译ios项目,在手机上运行查看效果
本帖最后由 bcbnb 于
10:13 编辑博客分类:
首先,你需要去admob官网()注册一个账户; 然后按照官网的提示,添加站点和应用程序
添加好了,就可以获得发布者ID和admob的jar包好了,获得的jar包,就可以根据介绍的方法为我们的应用添加广告了 1. Right click on your app project in Eclipse and choose Properties 2. Select Java Build Path and the Libraries tab. Then click Add External JARs... to add the Google AdMob Ads JAR. 3.instantiate a com.google.ads.AdActivity in its AndroidManifest.xml and make ad requests requires the networking permissions INTERNET and ACCESS_NETWORK_STATE
&?xml version="1.0" encoding="utf-8"?&
&manifest xmlns:android="/apk/res/android"
package="com.hsj.test"
android:versionCode="1"
android:versionName="1.0"&
&uses-sdk android:minSdkVersion="7" /&
&application android:icon="@drawable/icon" android:label="@string/app_name"&
&activity android:name=".UnityAdActivity"
android:label="@string/app_name"&
&intent-filter&
&action android:name="android.intent.action.MAIN" /&
&category android:name="android.intent.category.LAUNCHER" /&
&/intent-filter&
&/activity&
&activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation"/&
&/application&
&uses-permission android:name="android.permission.INTERNET"/&
&uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/&
&/manifest&
接下来,有两种方式在你的应用中加入广告:
在你的Activity里面写入下面的代码
public class UnityAdActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Create the adView
AdView adView = new AdView(this, AdSize.BANNER, "你的发布者ID");
LinearLayout layout = (LinearLayout) findViewById(R.id.adView);
// Add the adView to it
layout.addView(adView);
// Initiate a generic request to load it with an ad
adView.loadAd(new AdRequest());
这样就ok了,可以编译程序运行试一下。 方式二 不改动代码,只改动布局文件main.xml和attrs.xml attrs.xml
&?xml version="1.0" encoding="utf-8"?&
&resources&
&declare-styleable name="com.google.ads.AdView"&
&attr name="adSize"&
&enum name="BANNER" value="1" /&
&enum name="IAB_MRECT" value="2" /&
&enum name="IAB_BANNER" value="3" /&
&enum name="IAB_LEADERBOARD" value="4" /&
&attr name="adUnitId" format="string" /&
&/declare-styleable&
&/resources&
&?xml version="1.0" encoding="utf-8"?&
&LinearLayout xmlns:android="/apk/res/android"
xmlns:ads="/apk/lib/com.google.ads"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"&
&com.google.ads.AdView android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adUnitId="你的发布者id"
ads:adSize="BANNER"
ads:loadAdOnCreate="true"/&
&/LinearLayout&
这样就ok了,可以编译运行。 如果在main.xml文件中不想开始就运行广告的话,可以去掉ads:loadAdOnCreate=&true&,然后在Activty中想要运行广告的地方加入代码 AdView adView = (AdView)this.findViewById(R.id.adView); adView.loadAd(new AdRequest());
tank2308635
浏览: 143222 次
来自: 北京
这个版本太老了,admob更新了。我后来尝试[url]http ...
为什么我做出来的ui无法用鼠标操作?滑块拖不动,里面的文字删不 ...
黑苹果系统或者虚拟机的苹果系统怎么安装这个呢?^_^
codeone 写道运行不了,提示BASE SDK MISSI ...
运行不了,提示BASE SDK MISSING
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'博客分类:
Unity3d已经支持android,如何在程序里加入admob?
在发现了一些方法。
中Wozik提供了一个unitypackage。。
试了一下,确实可以,不过必须要把android工程的包名改成unitypackage里的包名。
决定自己也做一个unity3d的Plugins,记录一下步骤:
经过自己测试wozik提供的Plugins中的AndroidManifest.xml,res,libs,bin是必须的,其他东西都可以去掉。
按照这个思路,自己用eclipse创建了个工程UnityAd,在工程中先把需要的包导入。
第一个包就是admob的jar包GoogleAdMobAdsSdk-4.1.0.jar,
第二个是Unity3d程序目录下的Unity\Editor\Data\PlaybackEngines\androidplayer\bin\classes.jar,
然后编写一个Activity继承UnityPlayerActivity
public class UnityAdActivity extends UnityPlayerActivity {
/** Called when the activity is first created. */
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setupAds();
private void setupAds() {
// And this is the same, but done programmatically
LinearLayout layout = new LinearLayout(this);
layout.setOrientation(LinearLayout.VERTICAL);
addContentView(layout, new LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.FILL_PARENT));
AdView adView = new AdView(this, AdSize.BANNER, "你的发布者ID");
layout.addView(adView, new LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
adView.loadAd(new AdRequest());
AndroidManifest.xml写成:
&?xml version="1.0" encoding="utf-8"?&
&manifest xmlns:android="/apk/res/android"
package="com.hsj.test"
android:versionCode="1"
android:versionName="1.0"&
&uses-sdk android:minSdkVersion="7" /&
&application android:icon="@drawable/icon" android:label="@string/app_name"&
&activity android:name=".UnityAdActivity"
android:label="@string/app_name"&
&intent-filter&
&action android:name="android.intent.action.MAIN" /&
&category android:name="android.intent.category.LAUNCHER" /&
&/intent-filter&
&/activity&
&activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation"/&
&/application&
&uses-permission android:name="android.permission.INTERNET"/&
&uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/&
&/manifest&
这就ok了,把工程build一下。
1,找到UnityAd工程目录,把bin文件夹下的com文件夹打成jar包,jar包名为com.hsj.test.jar,
将这个jar包拷贝到unity工程目录下的Assets\Plugins\Android\bin中。
2,把UnityAd工程目录下的res文件夹和AndroidManifest.xml文件拷贝到unity工程目录下的Assets\Plugins\Android
3,在unity工程目录下的Assets\Plugins\Android中建个libs目录,把GoogleAdMobAdsSdk-4.1.0.jar拷贝到libs目录中
4,在unity3d程序里可以看到
5,用unity3d
Build android 安装包
6把安装包放到虚拟机或真机上运行
虚拟机上跑太卡,而且广告经常获取失败。。。
tank2308635
浏览: 143224 次
来自: 北京
这个版本太老了,admob更新了。我后来尝试[url]http ...
为什么我做出来的ui无法用鼠标操作?滑块拖不动,里面的文字删不 ...
黑苹果系统或者虚拟机的苹果系统怎么安装这个呢?^_^
codeone 写道运行不了,提示BASE SDK MISSI ...
运行不了,提示BASE SDK MISSING
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'7被浏览1551分享邀请回答转载请注明出处:Unity 通过Unity Admob Plugin插件集成admob教程下载,插件里面包含Admob_Unity_Demo.unitypackage 插件文件AdmobPluginRes
是Admob 的ios sdk和插件使用样例代码打开样例代码可以看到代码里面如何使用Unity Admob插件把Admob Unity插件添加进unity工程1. 打开Unity工程2. 从菜单打开,Assets -& Import Package -& Custom Package.3. 选中Unity插件文件Admob_Unity_Demo.unitypackage4. 选择导入所有内容,把admob unity插件内全部内容导入导unity工程5. 修改admobdemo.cs里面的admob的参数6. 把addmobdemo.cs 添加到main camera或者其他在场景中一直存在物体上7. 打开file build and run选择android或者ios平台然后进行设置平台设置8. 点击build或者build and run编译项目获得xcode工程或者apk,把apk安装到设备上查看下过如果是ios项目,编译后得到的是xcode工程,为了能正常工作需要进行如下处理1.把admobpluginres目录下的GoogleMobileAds.framework直接拖拽(一定要拖,不要添加,否则报错)添加到项目根目录下2.给工程添加framework 引用,包括下面的AdSupport.framework,EventKit.framework,EventKitUI.framework,CoreTelephony.framework,StoreKit.framework,MessageUI.framework3.编译xcode工程为ipa,安装到设备后运行查看效果注意:需要设置【Build Settings】 - 【Build Options】 - 【Enable Bitcode】为 “No”, 否则有可能报错怎么在Unity应用里面集成Admob全屏广告?下面的Unity3d里面添加admob广告的代码
Admob.Instance().initAdmob("admob banner id", "admob interstitial id");//initAdmob just need call once,if you called when create banner ,you not need call any more
Admob.Instance().loadInterstitial(); 和横幅广告不同,全屏广告需要先加载,等加载完成后在合适的时间点展示广告
if (Admob.Instance().isInterstitialReady()) {
Admob.Instance().showInterstitial();
}下面分享Unity 集成admob横幅 广告的代码
Admob.Instance().initAdmob("admob banner id", "admob interstitial id");//admob id with format ca-app-pub-88//初始化设置广告
Admob.Instance().showBannerRelative(AdSize.Banner, AdPosition.BOTTOM_CENTER, 0);//在应用底部居中相对位置展示横幅广告
AdSize.Banner表示展示的广告尺寸,AdPosition.BOTTOM_CENTER表示横幅的放置位置,AdPosition里面包含各个广告位置常量,AdSize包含各个广告尺寸常量自定义横幅广告尺寸In addition to constants on _AdSize_, you can also create a custom size:除了AdSize里面的admob横幅广告外,你也可以自定义广告尺寸,当然这些尺寸必须是admob平台支持的,下面自定义个250x250的广告并展示
//Create a 250x250 banner.
AdSize adSize = new AdSize(250, 250);
Admob.Instance().showBannerAbsolute(adSize,0,30);横幅广告相对位置The following constants list the available ad positions:下面是所有支持的admob横幅广告相对位置常量
AdPosition.TOP_LEFT
AdPosition.TOP_CENTER
AdPosition.TOP_RIGHT
AdPosition.MIDDLE_LEFT
AdPosition.MIDDLE_CENTER
AdPosition.MIDDLE_RIGHT
AdPosition.BOTTOM_LEFT
AdPosition.BOTTOM_CENTER
AdPosition.BOTTOM_RIGHT默认横幅广告展示后就一直是可见的,如果想隐藏广告那可以通过下面的方式进行
Admob.Instance().removeBanner();设置admob广告测试模式和儿童应用设置可能你会想先测试下admob广告,那么你可以使用测试模式,或者你的应用是儿童应用,需要设置儿童应用模式可以通过下面的方法进行
Admob.Instance().setTesting(true);
Admob.Instance().setForChildren(true);Admob横幅广告和全屏广告都有差不多的广告事件,你可以在unity3d里面监听并处理所有admob广告事件下面是一个处理全屏广告事件的例子,我们在收到广告的时候就展示广告
Admob.Instance().interstitialEventHandler += onInterstitialE
void onInterstitialEvent(string eventName, string msg)
Debug.Log("handler onAdmobEvent---" + eventName + "
if (eventName == AdmobEvent.onAdLoaded)
Admob.Instance().showInterstitial();
}1添加评论分享收藏感谢收起}

我要回帖

更多关于 admob 接入unity 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信