我使用创建了一个应用程序,react-native ini projectName
并添加了一个名为的本机模块包react-native-facebook-account-kit
,我需要更改 ios 文件夹中的 Info.plist 并添加应用程序 ID 和客户端令牌信息。正如facebook docs所说,我还创建了一个pod文件。它工作正常。然后我试图在世博会上做同样的事情。所以我使用这个 cli 创建了一个新项目
create-react-native-app projectName
,然后我运行npm run eject
并选择了第二个选项,它同时使用 react-native 和 expo sdk。所以它成功创建了 ios 和 android 文件夹。
但是在 ios 文件夹中没有 Info.plist 文件。经过我的搜索,我找到了这个文档。
https://docs.expo.io/versions/latest/workflow/configuration#ios
我app.json
像文档所说的那样添加了一些键和值。
{
"expo": {
"sdkVersion": "27.0.0",
"ios": {
"bundleIdentifier": "com.cecil.foxtail",
"infoPlist": {
"FacebookAppID": "myAppId",
"AccountKitClientToken": "myClientToken",
"CFBundleURLTypes": [
// ??? CONFUSED
]
}
},
"android": {
"package": "com.cecil.foxtail"
}
}
}
这是应用程序中的原始 Info.plist,效果很好。
<key>FacebookAppID</key>
<string>{app-id}</string>
<key>AccountKitClientToken</key>
<string>{client-token}</string>
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>ak{client-token}</string>
</array>
</dict>
</array>
那么如何将这些数组定义到 app.json 中呢?