[英]Manifest (app.json) not initialized | Expo
我正在尝试为聊天应用程序实施 expo 推送通知,因此按照文档我到达了需要运行以下命令的部分: expo push:android:upload --api-key your-token-here
。 所以我去从 firebase 获取了令牌,在运行命令后我收到一条错误Manifest (app.json) not initialized
。 我想问题出在我使用的是动态配置 (app.config.js)。 我该如何解决?
app.config.js
import "dotenv/config";
export default {
expo: {
name: "XXX",
slug: "XXX",
version: "1.0.0",
scheme: "com.XXXXXXXXX.XXXX",
orientation: "portrait",
icon: "./assets/icon.png",
userInterfaceStyle: "light",
splash: {
image: "./assets/splash.png",
resizeMode: "contain",
backgroundColor: "#ffffff",
},
updates: {
fallbackToCacheTimeout: 0,
},
assetBundlePatterns: ["**/*"],
ios: {
supportsTablet: true,
},
android: {
package: "com.XXXXXXXXX.XXXX",
googleServicesFile: "./google-services.json",
adaptiveIcon: {
foregroundImage: "./assets/adaptive-icon.png",
backgroundColor: "#FFFFFF",
},
},
web: {
favicon: "./assets/favicon.png",
},
extra: {
apiKey: process.env.API_KEY,
authDomain: process.env.AUTH_DOMAIN,
projectId: process.env.PROJECT_ID,
storageBucket: process.env.STORAGE_BUCKET,
messagingSenderId: process.env.MESSAGING_SENDER_ID,
appId: process.env.APP_ID,
measurementId: process.env.MEASUREMENT_ID,
oneSignalAppId: process.env.ONESIGNAL_APP_ID,
},
plugins: [
[
"expo-image-picker",
{
photosPermission:
"The app accesses your photos to let you share them with your friends.",
},
],
],
},
};
我想知道您是否在此更改之前使用了动态配置? 很难确定,但快速浏览您发布的配置,我相信您不会在动态配置中拥有expo
密钥。
查看配置文档,static 配置确实具有expo
的结构:
// app.json content
{
"expo": {
"name": "My app",
"slug": "my-app"
}
}
但是当你查看动态的时,一切都被扁平化到顶层:
// app.config.js content
module.exports = {
"name": "My app",
"slug": "my-app"
};
如果它没有帮助,我建议运行expo config
以查看 Expo 看到的自省结果配置。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.