私は PositionSource を使用して、Ubuntu Touch によって提供される GPS データからユーザーの位置の緯度と経度を取得しています。ただし、ユーザーが GPS を有効にしているかどうかを検出する必要があります。
PositionSourceの公式ドキュメントを読むとここ、私はそれが特性を持っていることを発見しました有効公式文書を引用すると、
PositionSource オブジェクトがデータを提供するための有効なバックエンド プラグインを取得した場合、このプロパティは true になります。false の場合、PositionSource の他のメソッドは効果がありません。
アプリケーションは、このプロパティをチェックして、ランタイム プラットフォームで位置決めが使用可能で有効になっているかどうかを判断し、それに応じて対応する必要があります。
しかし、Ubuntu Touchで位置情報サービスを有効/無効にしても、このプロパティは更新されないようです。GUI(位置情報インジケータ)とコマンドラインの両方を使用してGPSステータスを変更してみました。
stop ubuntu-location-service-trust-stored
携帯電話で GPS が有効/無効になっているかどうかを確認するために追跡できる他のプロパティはありますか?
答え1
アプリケーションは、実際の位置プロバイダに関する知識に頼るのではなく、個々の位置更新で提供される精度の推定値に頼るべきです(http://developer.ubuntu.com/api/qml/sdk-14.10/QtLocation.Position/#horizontalAccuracy-propこれにより、アプリケーション開発者は衛星ベースの測位システム(GPS、GLONASS、Beidou など)の特定の特性について心配する必要がなくなり、目の前のタスクに集中できるようになります。
さらに、Ubuntu のロケーション サブシステムは、位置推定に GPS を使用せず、ネットワーク ベースのポジショニングのみに依存する可能性があります。