開発するときにシミュレーターで GPS をシミュレートする必要があることは誰もが知っていますが、オンラインで確認したところ次の解決策が見つかりました:
オンライン ヒーローの解決策:
シミュレーターで取得するときGPS 情報を使用する場合は、Location loc = LocationManager.getLastKnownLocation("gps"); を使用して位置情報を取得します。ただし、最初に GPS 情報を手動で追加する必要があるため、デバッグ中に loc が null になることがよくあります。手動で追加する方法は 2 つあります。
1. Eclipse で、ウィンドウ -> パースペクティブを開く -> DDMS -> エミュレータ制御 -> 手動で緯度と経度を手動で設定し、送信ボタンを押します。ただし、この方法は私によってテストされており、有効にするには次の方法に基づいている必要があります。
2. cmd で情報を手動で追加することもできます。
(1) まずシミュレーターを開き、cmd を実行して、telnet localhost 5554 を入力します (注: 5554 は、ローカル マシン上のシミュレーターのポートです。異なる場合があります。特定のポート番号は、コンピューターの左上隅に表示されます)シミュレーター)、「
Android コンソール: コマンドのリストについては 'help' と入力して OK」という言葉が表示されます。
WIN7 を使用している場合、コンソールに Telnet が無効であるかどうかを示すメッセージが表示される場合があります。これは、Telnet が WIN7 ではデフォルトで表示されず、手動で有効にする必要があるためです。具体的には: [1] [コントロール パネル] --> [プログラム] --> Windows の機能をオンまたはオフにして、Telnet サーバーと Telnet クライアントを確認します。 [2] 次に、管理ツール --> サービスで Telnet を手動で開始します
(2) geo コマンドを使用して、GPS 信号の送信をシミュレートします:
geo 経度と緯度を修正します
(3) それがステータス バーに表示されます。シミュレーターの画面に余分な GPS マークがあります~次に、Location loc = LocationManager.getLastKnownLocation("gps"); を使用して座標の位置を取得します~~
実際に実行したところ、まだエラーが報告されていることがわかりましたGPS エラーが表示されませんでした。理由はわかりません。シミュレーターが GPS をオンにしていなかったため、後でシステム設定で GPS を有効にしても効果がなかったと思います。シミュレーター上で Google マップを直接実行しました。今回は、GPS インジケーターのアイコンが表示されたら、位置情報を取得するメソッドを呼び出すだけです。また、他のメソッドを使用する場合は、引き続きエラーが発生することに注意してください。報告されました
その他 Android エミュレータで GPS をシミュレートする 関数が常に null になる問題の解決策に関する関連記事については、PHP 中国語 Web サイトに注目してください。