我正在使用 ReactNative Expo 来开发 android/iOS 应用程序,还添加了 AdMOB。问题是当我运行 expo build:ios 时,它返回以下错误“验证 app.json 中的字段时出现问题”。请参阅https://docs.expo.io/workflow/configuration/ • 不应具有附加属性“config”。
这是我的 app.json 文件:
{
"expo": {
"name": "AppName",
"slug": "AppSlug",
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/icon.png",
"splash": {
"image": "./assets/splash.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": [
"**/*"
],
"ios": {
"supportsTablet": true
},
"config": {
"googleMobileAdsAppId": "ca-app-pub-xxxxxx"
},
"android": {
"package": "com.x.yyyyy",
"config": {
"googleMobileAdsAppId": "ca-app-pub-xxxxxx"
}
}
}
}
这只是一个愚蠢的打字错误。您必须将“config”键放入“ios”中。
这将解决您的问题:
{
"expo": {
"name": "AppName",
"slug": "AppSlug",
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/icon.png",
"splash": {
"image": "./assets/splash.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": [
"**/*"
],
"ios": {
"supportsTablet": true,
"config": {
"googleMobileAdsAppId": "ca-app-pub-xxxxxx"
}
},
"android": {
"package": "com.x.yyyyy",
"config": {
"googleMobileAdsAppId": "ca-app-pub-xxxxxx"
}
}
}
}
这只是一个愚蠢的打字错误。
不要在 slug 中使用任何空格或下划线。