Ionic iOS App store上传错误NSPhotoLibraryUsageDescription Key

时间:2017-03-31 04:10:02

标签: ios cordova ionic2 app-store

我开发了Ionic 2应用程序。当我尝试将其上传到Apple商店时,他们会通过以下消息拒绝它:

  

缺少Info.plist密钥 - 此应用程序尝试在没有使用说明的情况下访问隐私敏感数据。应用程序的Info.plist必须包含一个NSPhotoLibraryUsageDescription键,其中包含一个字符串值,向用户解释应用程序如何使用此数据。

我在config.xml中添加了NSPhotoLibraryUsageDescription

<plugin name="cordova-plugin-camera" spec="https://github.com/apache/cordova-plugin-camera">
                <variable name="CAMERA_USAGE_DESCRIPTION" value="App would like to access the camera." />
                <variable name="PHOTOLIBRARY_USAGE_DESCRIPTION" value="App would like to access the library." />
</plugin>

但他们仍然以同样的信息拒绝了该应用。我是否需要在所有插件变量中添加此键?我的意思是我也使用了图像选择器插件。我是否还需要在此插件中添加此密钥?我已经添加了,但他们仍然拒绝同样的错误。

6 个答案:

答案 0 :(得分:9)

对我有用的是更改config.xml

package automationFramework;

import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.remote.DesiredCapabilities;

import junit.runner.Version;
public class SecondTest {

    public static void main(String[] args) throws Exception {



        System.out.println("JUnit version is: " + Version.id());

    DesiredCapabilities capabilities = DesiredCapabilities.firefox();
    capabilities.setCapability("marionette", true);

    FirefoxDriver driver = new FirefoxDriver();


    //System.setProperty("webdriver.gecko.driver", "C:\\\\Program Files\\Firefox Developer Edition\\firefox.exe");  
    System.setProperty("webdriver.gecko.driver", "E:\\\\Projects\\WebDriver\\geckodriver.exe"); 

    driver.get("http://www.google.com");




    }

}

答案 1 :(得分:2)

Apple的审核小组及其验证会检查您的文件是否安全。因此,您需要在Info.plist文件中的这些行添加说明。

就像我做了以下事情:

screenshot screenshot

答案 2 :(得分:2)

Photolibrary有两种类型的info.plist。

<variable name="PHOTOLIBRARY_USAGE_DESCRIPTION" value="App would like to access the library." />
<variable name="PHOTO_LIBRARY_USAGE_DESCRIPTION" value="App would like to access the library." />

也许你没有在相应的插件中添加第二个变量。请添加它。希望它能奏效。

答案 3 :(得分:1)

在平台ios中插入代码:

--tries

答案 4 :(得分:0)

在xcode中打开info.plist作为源代码。

添加以下行:

    <string>need photo library access to save pictures there</string>
    <key>NSPhotoLibraryUsageDescription</key>
    <string>Need Gallery access to use photos for ads posting.</string>

将内部文本更改为正确的文本,为什么需要访问照片库和照相机。

这应该可行,您也将获得Apple团队的批准

答案 5 :(得分:0)

几天前,我的IONIC 4项目也遇到了同样的问题。当我上传IPA时,我从App Store Connect收到此警告。

enter image description here

我通过以下步骤解决了“ info.plist中缺少目的字符串”的问题。希望它也对您有用。

  1. 转到您的“ info.plist”文件。

enter image description here

  1. 找到此密钥,称为“隐私-照片库使用说明”。如果它不存在,请添加一个新值,它的值如下图所示。

enter image description here

谢谢。