PhoneGap доступ пользователя местоположение Info.plist - PullRequest
0 голосов
/ 27 февраля 2019

У меня есть приложение, которое использует местоположение пользователя, чтобы найти достопримечательности, которые они находятся рядом.После отправки моего приложения Phonegap в магазин iOS оно отклоняется по следующей причине:

"Мы заметили, что ваше приложение запрашивает согласие пользователя на доступ к его местоположению, но не разъясняет использование местоположения вприменимая строка назначения. Пожалуйста, измените соответствующую строку назначения в файле Info.plist вашего приложения, чтобы указать, почему приложение запрашивает доступ к местоположению пользователя. Вы можете изменить файл Info.plist вашего приложения, используя редактор списка свойств в Xcode. "

Я думал, что решил эту проблему, добавив в свой файл config.xml следующее:

<edit-config target="NSLocationWhenInUseUsageDescription" file="*-Info.plist" mode="merge">
        <string>The user's location is used to find the distance they are from certain landmarks.</string>
</edit-config>

config.xml:

<?xml version='1.0' encoding='utf-8'?>
<widget id="com.phonegap.myapp" version="1.0.10" xmlns="http://www.w3.org/ns/widgets" xmlns:gap="http://phonegap.com/ns/1.0">
    <name>MyApp</name>
    <preference name="android-targetSdkVersion" value="26"/>
    <description>
        A blank PhoneGap app.
    </description>
    <plugin name="cordova-plugin-whitelist" source="npm" spec="~1.2.1" />
    <plugin name="cordova-plugin-geolocation" spec="2.4.3" />
    <plugin name="cordova-plugin-x-socialsharing" spec="5.4.0" />
    <edit-config target="NSLocationWhenInUseUsageDescription" file="*-Info.plist" mode="merge">
        <string>The user's location is used to find the distance they are from landmarks.</string>
    </edit-config>
    <icon src="images/icon.png" />
    <icon height="40" platform="ios" src="images/icon40.png" width="40" />
    <icon height="76" platform="ios" src="images/icon76.png" width="76" />
    <icon height="120" platform="ios" src="images/icon120.png" width="120" />
    <icon height="152" platform="ios" src="images/icon152.png" width="152" />
    <icon height="1024" platform="ios" src="images/icon1024.png" width="1024" />
    <author email="support@phonegap.com" href="http://phonegap.com">
        PhoneGap Team
    </author>
    <content src="index.html" />
    <access origin="*" />
</widget>

Тем не менее, он все еще получаетотклонено по этой причине.Как я могу изменить config.xml или что-то еще, чтобы не получить отклонение по этой причине в магазине iOS?

1 Ответ

0 голосов
/ 12 марта 2019

Я удалил эту часть:

<edit-config target="NSLocationWhenInUseUsageDescription" file="*-Info.plist" mode="merge">
        <string>The user's location is used to find the distance they are from certain landmarks.</string>
</edit-config>

и добавил эту часть:

<plugin name="cordova-custom-config" version="*"/>
<config-file overwrite="true" parent="NSLocationAlwaysUsageDescription" platform="ios" target="*-Info.plist"> <string>Your location is used to find how far you are from landmarks.</string> </config-file>
<config-file overwrite="true" parent="NSLocationWhenInUseUsageDescription" platform="ios" target="*-Info.plist"> <string>Your location is used to find how far you are from landmarks.</string> </config-file>

Теперь все работает как положено.

...