在Meteor中添加info.plist条目?

时间:2016-03-13 02:09:49

标签: cordova meteor meteor-cordova

如何在Meteor中添加info.plist文件中的条目?

是否有移动配置设置或类似设置?

Uber文档中有一个示例,说明您要添加条目的原因: https://developer.uber.com/docs/deep-linking

2 个答案:

答案 0 :(得分:6)

我没有使用Meteor,但您可以使用cordova-custom-config插件在project/cordova-build-override/config.xml中定义自定义配置(请参阅Meteor Advanced Build Customization)并将其应用于平台配置在构建时:

meteor add cordova:cordova-custom-config

config.xml中:

<platform name="ios">
    <config-file platform="ios" target="*-Info.plist" parent="LSApplicationQueriesSchemes">
        <array>
          <string>uber</string>
        </array>
    </config-file>
</platform>

答案 1 :(得分:1)

@davealden的回答不是Meteor的正确答案。 Meteor使用mobile-config.js进行移动配置。您应该配置此文件并避免第三方解决方法,因为Meteor在进行构建时检查此文件并使用第三方会导致不一致。

mobile-config.js文件位于Meteor项目的根文件夹中,可能如下所示;

// This section sets up some basic app metadata, the entire section is optional.
App.info({
  id: 'com.example.matt.uber',
  name: 'über',
  description: 'Get über power in one button click',
  author: 'Matt Development Group',
  email: 'contact@example.com',
  website: 'http://example.com'
});

// Set up resources such as icons and launch screens.
App.icons({
  'iphone_2x': 'icons/icon-60@2x.png',
  'iphone_3x': 'icons/icon-60@3x.png',
  // More screen sizes and platforms...
});

App.launchScreens({
  'iphone_2x': 'splash/Default@2x~iphone.png',
  'iphone5': 'splash/Default~iphone5.png',
  // More screen sizes and platforms...
});

// Set PhoneGap/Cordova preferences.
App.setPreference('BackgroundColor', '0xff0000ff');
App.setPreference('HideKeyboardFormAccessoryBar', true);
App.setPreference('Orientation', 'default');
App.setPreference('Orientation', 'all', 'ios');

// Pass preferences for a particular PhoneGap/Cordova plugin.
App.configurePlugin('com.phonegap.plugins.facebookconnect', {
  APP_ID: '1234567890',
  API_KEY: 'supersecretapikey'
});

// Add custom tags for a particular PhoneGap/Cordova plugin to the end of the
// generated config.xml. 'Universal Links' is shown as an example here.
App.appendToConfig(`
  <universal-links>
    <host name="localhost:3000" />
  </universal-links>
`);

要修改Info.plist,您可以使用App.appendToConfig个对象。例如,要请求访问设备的麦克风,您应该在mobile-config.js中添加以下代码段;

App.appendToConfig(`
  <edit-config target="NSMicrophoneUsageDescription" file="*-Info.plist" mode="merge">
    <string>Need microphone access to enable voice dialogs</string>
  </edit-config>
`);

官方documentation提供全面的信息。