Носимое веб-приложение Tizen не запрашивает разрешения (GPS)

Я пытаюсь прочитать свои данные GPS с Samsung Gear S3, мой проект работает, когда я имитирую его в студии Tizen. Когда я запускаю проект на живом Gear S3, он не получает никаких данных GPS.

У меня не появляется всплывающее окно на устройстве, которое запрашивает у меня какие-либо разрешения, в то время как я получаю это всплывающее окно, когда я моделирую приложение, поэтому я думаю, что это как-то связано с проблемой.

Что я сделал:

  • GPS на Gear доступен только для GPS.
  • Восстановить, очистить, перезапустить все, деинсталлировать приложение при каждой попытке.
  • У проекта есть сертификат Samsung
  • В config.xml добавлен ряд функций и привилегий (см. Код ниже)

Код

config.xml , как указано выше, включая кучу, возможно, ненужных функций и привилегий.

<?xml version="1.0" encoding="UTF-8"?>
<widget xmlns:tizen="http://tizen.org/ns/widgets" xmlns="http://www.w3.org/ns/widgets" id="http://yourdomain/OSMLEAF" version="1.0.0" viewmodes="maximized">
    <access origin="*" subdomains="true"></access>
    <tizen:application id="5lI7dRUWxx.OSMLEAF" package="5lI7dRUWxx" required_version="2.3.1"/>
    <content src="index.html"/>
    <feature name="http://tizen.org/feature/screen.size.all"/>
    <feature name="http://tizen.org/feature/location.gps"/>
    <feature name="http://tizen.org/feature/location.gps.satellite"/>
    <feature name="http://tizen.org/feature/location"/>
    <feature name="http://tizen.org/feature/location.geofence"/>
    <feature name="http://tizen.org/feature/location.batch"/>
    <icon src="icon.png"/>
    <name>OSMLEAF</name>
    <tizen:privilege name="http://tizen.org/privilege/notification"/>
    <tizen:privilege name="http://tizen.org/privilege/setting"/>
    <tizen:privilege name="http://tizen.org/privilege/system"/>
    <tizen:privilege name="http://tizen.org/privilege/package.info"/>
    <tizen:privilege name="http://tizen.org/privilege/location"/>
    <tizen:privilege name="http://tizen.org/privilege/internet"/>
    <tizen:privilege name="http://tizen.org/privilege/application.launch"/>
    <tizen:privilege name="http://tizen.org/privilege/filesystem.read"/>
    <tizen:privilege name="http://tizen.org/privilege/filesystem.write"/>
    <tizen:privilege name="http://tizen.org/privilege/download"/>
    <tizen:profile name="wearable"/>
    <tizen:setting background-support="enable" encryption="disable" hwkey-event="enable"/>
</widget>

edit: javascript из того, что я пытаюсь сделать с координатами:

    var options = {enableHighAccuracy: true,timeout: 0};
    function successCallback(position)
    {
        console.log("succes");

        currentGpsPosLat = position.coords.latitude;
        currentGpsPosLong = position.coords.longitude;
        marker.setLatLng([currentGpsPosLat,currentGpsPosLong]);
        console.log("going to"+ currentGpsPosLong + " -- " +currentGpsPosLat);

    }


    var marker = L.marker([0.0, 0.0],{icon:carIcon}).addTo(map);


    function errorCallback(error)
    {
        console.log("error");
        console.log(error);
    }

    navigator.geolocation.watchPosition(successCallback, errorCallback, options);

    window.setInterval(function(){

        marker.setLatLng([currentGpsPosLat,currentGpsPosLong]);
        map.flyTo([currentGpsPosLat,currentGpsPosLong], 17);
        }, 10000);

Не могу найти в Интернете ничего по этой проблеме, поэтому мы будем благодарны за любую помощь, указывающую мне в правильном направлении!


person K. Azzey    schedule 24.05.2017    source источник
comment
Что ты пытаешься сделать? дайте пример кода   -  person Iqbal hossain    schedule 25.05.2017
comment
Привет, Икбал, я добавил javascript из того, что пытаюсь сделать. Пытаюсь создать иконку и постоянно перемещать иконку в положение GPS. Если вам нужна дополнительная информация, просто дайте мне знать и спасибо, что подумали вместе со мной!   -  person K. Azzey    schedule 25.05.2017
comment
Это Tizen API? Я думаю, что это сторонний api. Это не часть Tizen, может быть var marker = L.marker ([0.0, 0.0], {icon: carIcon}). AddTo (map);   -  person Iqbal hossain    schedule 26.05.2017


Ответы (1)


Разве Gear S3 не поставляется с Tizen 2.3.2? Это мало, но вы можете установить минимальную требуемую версию с 2.3.1 до 2.3.2.

Вы можете установить одну из бесплатных утилит на основе GPS из магазина Samsung, чтобы убедиться, что вы можете получить исправление местоположения в среде, в которой вы тестируете. Есть места для бота в помещении и на улице, в которых исправить GPS будет непросто. Стоит исключить это как возможный источник проблем.

Я просто вернулся и взглянул на приложение GPS, которое я сделал, чтобы проверить некоторую информацию. Я использую Gear S2 с сотовой связью, который после последнего обновления прошивки ведет себя так же, как Gear S3 без MST.

Вы упомянули, что не получаете подсказку о разрешении местоположения. Часы не запрашивают разрешения на местоположение. Объявление информации о местоположении необходимо в манифесте (если его там нет, вы не получите информацию GPS) и отображается как необходимое разрешение в магазине приложений. Как только пользователь установит его, он просто работает. Обратите внимание, что объявления функций не имеют никакого функционального значения в вашем приложении. Эти объявления используются для списка в интернет-магазине.

Во фрагменте кода, которым вы поделились, я не могу сказать, входит ли currentGpsPosLat / currentGpsPosLong в область действия функции тайм-аута, но вам не нужна эта функция, поскольку вы будете устанавливать местоположение, когда получите информацию от GPS.

При успешном обратном вызове вызовите console.log перед вызовом marker.setLatLng. Если что-то пошло не так в setLatLng, функция незаметно завершится, и у вас не будет никаких указаний на то, была ли функция вообще вызвана. Если вы измените порядок, вы сможете увидеть, была ли функция вызвана, но не завершилась.

Мне нужно было всего несколько разрешений для моего приложения.

<tizen:privilege name="http://tizen.org/privilege/location"/>
<tizen:privilege name="http://tizen.org/privilege/application.launch"/>
person Joel    schedule 31.05.2017