1

モバイルアプリ(iphone + android)の構築にAppceleratorTitaniumを使用しています。彼らのドキュメントでtitanium.geolocationを見つけましたが、iOSで見つけた「startMonitoringForRegion」や「startMonitoringSignificantLocationChanges」などのメソッドは見つかりませんでした。ただし、「ERROR_REGION_MONITORING_DENIED」として定義されたプロパティがあるため、何らかの領域監視メソッドが必要です。

それで、それは文書で定義されていないのですか、それとも私は何かが欠けていますか?グーグルを試しましたが見つかりませんでした。

基本的に私が望むのは、アプリがバックグラウンドにある場合でも、ユーザーが特定のリージョンに入るときにアラートをユーザーに提示することです(iOSのstartMonitoringForRegionで行っていたように)。チタンでも可能です。助けてください。

4

2 に答える 2

1

「ロケーションイベントの定期的なストリームを必要としないアプリケーションの場合は、startMonitoringSignificantLocationChanges代わりにイベントの配信を開始する方法を使用することを検討する必要があります。この方法は、最初のユーザーロケーションの修正のみが必要で更新のみが必要な大多数のアプリケーションに適しています。ユーザーがかなりの距離を移動したとき。このインターフェースは、デバイスに関連付けられたセルタワーへの変更を検出した場合にのみ新しいイベントを配信するため、更新の頻度が減り、電力使用量が大幅に向上します。」

Appleが定義するその基準によれば、必要なのはTitanium.Geolocation.distanceFilter、イベントが*メートルごとに発生し続けるように設定することだけであるように思われます。

直接ドキュメントはありませんが、KSリソースを確認すると、geolocation.jsファイルがドキュメント化されていないいくつかの機能を使用していることがわかります。基本的にそれをコピーして、アプリに必要のないものを取り除く必要がありました。

https://github.com/appcelerator/KitchenSink/blob/master/Resources/examples/geolocation.js#L345

startMonitoringForRegion同じアイデアである必要がありますが、このドキュメントaccuracy constantで定義されているように設定する必要があります。

于 2011-04-18T16:45:04.693 に答える
-1

regionChangedイベントにリスナーをアタッチしてみることができます

http://developer.appcelerator.com/apidoc/mobile/latest/Titanium.Map.MapView-object

于 2011-04-11T22:05:29.590 に答える