0

ロケーショントラッカーのようなアプリケーションを実装しようとしています。特定の時間に位置情報を取得する必要がありますが、試みているうちに、携帯電話が GPS 位置情報を取得できない場合、ネットワークの位置情報が検索されないことに気付きました。携帯電話の設定で gps をオフにすると、ネットワークの場所が取得されます。両方を使用する方法、またはコードで使用するものを設定するにはどうすればよいですか。Java ME ロケーション API を使用します。前もって感謝します。

編集:場所を取得するための私のコードは次のとおりです:

    Criteria cr= new Criteria();
    cr.setHorizontalAccuracy(500);
    cr.setCostAllowed(true);

    // Get an instance of the provider
    LocationProvider lp= LocationProvider.getInstance(cr);
    // Request the location, setting a one-minute timeout
    Location l = lp.getLocation(60);
    QualifiedCoordinates c = l.getQualifiedCoordinates();

    if(c != null ) {
        // Use coordinate information
        double lat = c.getLatitude();
        double lon = c.getLongitude();
        double acc = c.getHorizontalAccuracy();

        form.append("latitude: " + lat);
        form.append("\nlongitude: " + lon);
        form.append("\nacc: " + acc);
    }
4

1 に答える 1

0

API でロケーション プロバイダーのメソッドを定義することはできません。実装は、ハードウェア (この操作の背後にある) に対して透過的です。あなたが書いたことは正しいです。場所は 1 つのソースからのみ取得でき、このソースは電話の設定 (場所の設定) に依存します。

ただし、デバイスに関連付けられているネットワークのセルを特定することで、ネットワーク ベースの場所を読み取ることができます。コード サンプルを提供するこの記事は役に立つはずです。

于 2012-05-23T14:39:54.253 に答える