如何在Android中使用AdMob和phonegap

如何在Android中使用AdMob和phonegap,第1张

1. [代码][Java]代码 跳至 [1] [全屏预览]

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

安装AdMob PhoneGap插件

使用https://github.com/admob-google/admob-cordova下载插件,然后本地安装

添加cordova plugin c:\phonegap-admob-plugin,或者在线安装cordova 插件。

cordova plugin add com.admob.plugin

使用PhoneGap命令下载插件,然后本地安装

添加 phonegap plugin c:\phonegap-admob-plugin。

使用PhoneGap的生成,增加配置

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

2.init AdMob PhoneGap插件

初始化插件后deviceready事件

admob.initAdmob("admob banner ID","admob interstitial ID")

3.展示横幅的位置关系

AdMob里有一些横幅大小,BannerSize,你可以创建自己的横幅大小在AdMob广告平台可用,位置容纳所有的相对位置常量。

<uses-feature android:name="android.hardware.microphone" android:required="false" />

可以设置为AdMob的更多的参数,如测试模式,适用于应用程序。

var admobParam=new admob.Params()

//admobParam.extra={'keyword':"admob phonegame"}

//admobParam.isForChild=true

admobParam.isTesting=trueadmob.showBanner(admob.BannerSize.BANNER,admob.Position.TOP_CENTER,admobParam)

4.在绝对位置显示横幅

你可以放置AdMob横幅在绝对位置比关系位置容易。

android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"

5.显示AdMob的插播

显示AdMob插播中的PhoneGap,cordova或 xdk应用是相同的步骤。缓存插播,然后它显示在onInterstitialReceive功能或显示它时,你的游戏结束了。

document.addEventListener(admob.Event.onInterstitialReceive, onInterstitialReceive, false)//show in ad receive event fun need add receive listener

admob.cacheInterstitial() // load admob Interstitial

function onInterstitialReceive(message) { //show in ad receive event fun

admob.showInterstitial()

}

function onGameOver(){//call this fun to show when game over

admob.isInterstitialReady(function(isReady){

if(isReady){

admob.showInterstitial()

}

})

}

6.处理AdMob的广告活动

你可以处理AdMob的所有本地事件,作为onInterstitialReceive,在admob.Event所有事件类型

function onAdmobEvent (message) {

//do some on admob event

}

document.addEventListener(admob.Event.onBannerDismiss, onAdmobEvent, false)

document.addEventListener(admob.Event.onBannerFailedReceive, onAdmobEvent, false)

document.addEventListener(admob.Event.onBannerLeaveApplication, onAdmobEvent, false)

document.addEventListener(admob.Event.onBannerPresent, onAdmobEvent, false)

document.addEventListener(admob.Event.onBannerReceive, onAdmobEvent, false)

document.addEventListener(admob.Event.onInterstitialDismiss, onAdmobEvent, false)

document.addEventListener(admob.Event.onInterstitialFailedReceive, onAdmobEvent, false)

document.addEventListener(admob.Event.onInterstitialLeaveApplication, onAdmobEvent, false)

document.addEventListener(admob.Event.onInterstitialPresent, onAdmobEvent, false)

document.addEventListener(admob.Event.onInterstitialReceive, onAdmobEvent, false)

7.更多功能

• 隐藏AdMob的横幅

admob.hideBanner()

• 如果插播加载成功进行测试

admob.isInterstitialReady(function(isReady){

if(isReady){

alert("admob Interstitial loaded")

}

})

在config.xml中插件可以用来通过配置插件(为每个应用程序构建phonegap构建服务,你需要有一个config.xml文件在你的根文件夹)。

据Cordova队公布,Cordova注册表已过时,所有的插件都搬到了npm, 并更名为"cordova-plugin-xxx"。

在你的config.xml文件:

<uses-permission android:name="android.permission.RECORD_AUDIO" />或

<uses-feature android:name="android.hardware.microphone" android:required="false" />

使用那个插件标识?

请注意,有两个插件之间的一些细微的差别:

• cordova-plugin-admobpro, 在你的Android SDK中它使用默认的jar,需要构建Gradle的Android apk。看到它的plugin.xml:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

• cordova-plugin-admob,它依赖于一个插件包含了google-play-services.jar,可以使用这些工具代替Gradle。看到它的plugin.xml:

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>

PhoneGap构建是否支持Gradle看

请检查来自PhoneGap构建的新闻在他们的网页:

• 2015/9/29: Android的建立使用PhoneGap4+,现在使用@phonegapbuild 上的Gradle!查看博客:...更多的信息和警告!

• 2015/9/30:在新的Android gradle构建上有一些问题!我们已经再次恢复默认构建与ant。很抱歉的麻烦。

• 2015/9/30: @PhoneGapBuild会将gradle问题更新排序。

示例

查看全部config.xml文件:

然后你可以在你的javascript代码中调用AdMob插件(deviceready事件触发之后)。

你的index.html:

keymob.isInterstitialReady(function (isReady) {

if (isReady) {

alert("Interstitial is load success,you can show it now")

}

})

keymob.showInterstitial()

keymob.isInterstitialReady(function (isReady) {

if (isReady) {

keymob.showInterstitial()

}

})

function onAdReceive(message) {

if(message.adtype==keymob.AdTypes.INTERSTITIAL){

alert(message.adtype + message.adapter+" ,you can show it now")

}

//keymob.showInterstitial()//show it when received

}

document.addEventListener(keymob.AdEvent.ON_LOADED_SUCCESS, onAdReceive, false)

建立与APP的PhoneGap构建

把你的代码放置在,从来源于的PhoneGap构建添加应用。

这是用一个简单的PhoneGap构建演示项目(与index.html和config.xml)。

建立并得到你的应用程序包,如果构建通过。

官方文档 http://cordova.axuer.com/docs/zh-cn/latest/guide/cli/index.html

cordovaApp,com.my.demo,demo依次代表文件夹名,默认反向域值 ,app应用名

src/package.json文件build后面添加&&((robocopy .\dist ..\www /MIR) &exit 0)

/src项目根目录下

cordova根目录下

PS:真机调试时,手机需在设置中打开开发者模式,如果找不到开发者模式,可以在关于手机中连续点击版本号

以相机插件为例,官方文档地址 点击查看


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11246543.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存