Appcelerator开发iOS应用集成AdMob/StartApp找不到Ti.Admob模块求助
Ti.Admob 模块获取方式
不用找网上零散的第三方下载包,那些老链接基本都失效,而且很多是多年不更新的32位旧版本,不支持iOS 14+的权限要求,装了也没法正常编译上架。正确的获取渠道只有两个:
- 打开Appcelerator Studio内置的模块市场,搜索
ti.admob,选择匹配你当前使用的Titanium SDK版本、对应iOS平台的安装包直接一键安装即可 - 如果模块市场加载异常,直接打开项目根目录的
tiapp.xml,在<modules>节点下手动添加一行依赖配置:
<module platform="iphone">ti.admob</module>
保存后执行项目编译命令,Titanium CLI会自动拉取对应适配版本的模块到本地,不需要手动下载导入。
AdMob 最小可运行集成示例(iOS端)
安装完模块后按以下步骤配置即可正常出广告:
- 配置plist权限和AdMob应用ID
还是在tiapp.xml的iOS配置节点下,添加如下plist配置:
<plist> <dict> <key>GADApplicationIdentifier</key> <string>替换为你在AdMob后台申请的应用ID</string> <key>NSUserTrackingUsageDescription</key> <string>请允许跟踪权限以提供更匹配需求的个性化广告</string> </dict> </plist>
- 初始化SDK
在项目入口文件(普通项目是Resources/app.js,Alloy框架项目是app/alloy.js)的启动逻辑最前面添加初始化代码:
const Admob = require('ti.admob'); Admob.initialize();
- 广告组件调用示例
// 底部横幅广告 const banner = Admob.createBannerView({ adSize: Admob.AD_SIZE_BANNER, adUnitId: '替换为你自己的横幅广告位ID', bottom: 0 }); // 把广告添加到当前窗口 currentWindow.add(banner); // 加载广告 banner.loadAd(Admob.createAdRequest()); // 插屏广告 const interstitialAd = Admob.createInterstitialAd({ adUnitId: '替换为你自己的插屏广告位ID' }); interstitialAd.load(); // 需要展示广告的时机先判断加载状态,避免空加载报错 if (interstitialAd.isLoaded()) { interstitialAd.show(); }
StartApp 集成说明
如果要接入StartApp广告,流程和AdMob基本一致:直接在模块市场搜索安装ti.startapp模块,在tiapp.xml中配置StartApp后台申请的应用ID、添加ATT权限描述,按照模块文档调用初始化和广告加载方法即可。
注意不管接入哪个广告平台,记得把项目的iOS最低部署版本设置为12.0以上,目前两个平台的最新广告SDK都已经停止支持iOS 11及更早版本,低版本配置会直接出现编译链接错误。
内容的提问来源于stack exchange,提问作者Manuel Rodrigues
相关产品推荐
相关产品推荐

