gpt4 book ai didi

titanium - Hyperloop 和 Google 移动广告 SDK

转载 作者:行者123 更新时间:2023-12-02 22:14:20 27 4
gpt4 key购买 nike

我正在尝试在我的 appcelerator 项目中使用 Google-Mobile-Ads-SDK,因为 ti.admob ( https://github.com/appcelerator-modules/ti.admob ) 似乎不支持激励广告。所以我在顶级项目目录中创建了一个Podfile:

install! 'cocoapods',
:integrate_targets => false

platform :ios, '7.0'

target 'my app' do
use_frameworks!
pod 'Google-Mobile-Ads-SDK', '7.15'
end

(我无法使用最新版本的 pod,Xcode 因某些类型声明问题而失败 - 这个编译得很好。)

然后我使用了这个库,如下所示:

var GADRequest = require('GoogleMobileAds/GADRequest');
var GADRewardBasedVideoAd = require('GoogleMobileAds/GADRewardBasedVideoAd');
var instance = GADRewardBasedVideoAd.sharedInstance();
if (!instance.isReady()) {
var request = new GADRequest();
instance.loadRequest(request, Alloy.CFG.rewardedadid);
}

代码失败并出现错误:

TypeError: undefined is not a function
(evaluating 'instance.loadRequest(request, Alloy.CFG.rewardedadid)')

查看 ./build/hyperloop/ios/js/googlemobileads/gadrewardbasedvideoad.js 处相应生成的 .js 文件,我注意到为所有这些生成了实例方法和属性的函数签名位于 GADRewardBasedVideoAd.h 中,loadRequest() 除外。 loadRequest() 的 header 条目是:

- (void)loadRequest:(GADRequest *)request withAdUnitID:(NSString *)adUnitID;

唯一明显的区别是它使用命名参数。这种方法有什么特别之处吗?是我做错了什么还是Hyperloop还不支持这些功能?

最佳答案

这里的问题是您没有包含完整的签名(缺少 withAdUnitID: 选择器)。要修复它,只需在 Hyperloop 中连接参数,如下所示:

// Compiles to native "loadRequest:withAdUnitID:"
instance.loadRequestWithAdUnitID(request, Alloy.CFG.rewardedadid);

这记录在 Named MethodsHyperloop Programming Guide 部分.

提示:有一个 open source example在 Hyperloop 上使用 Google 移动广告 Android 库的方法,请尝试一下!

关于titanium - Hyperloop 和 Google 移动广告 SDK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44344063/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com