2016-12-10 5 views
0

私は、受信した信号強度と隣接するセルタワーを見つけるアプリケーションを作りたいと思います。隣接セルタワーのセルID、mnc、mcc、lacと信号強度を取得できました。しかし、各セルタワーの距離を計算したいcellid、lac、mnc、mccを使用して現在のモバイルからの方向を確認します。私はそれを行うためにインターネット接続を使用したくありません。 計算が可能ですか? 可能であればどうすればいいか教えてください。cellId、LAC、MCC、MNC Androidで現在の移動局から隣接セル塔の距離と方向を取得できますか?

答えて

0

インターネット接続がなければ、これは難しいでしょうか?ただし、インターネット接続を使用できる場合は、Mozilla Location Serviceで隣接セルID(すでに取得したことがある)を検索し、緯度/経度を取得することができます。

携帯電話の現在地の取得に関する多くの回答があります。

d = acos(sin φ1 ⋅ sin φ2 + cos φ1 ⋅ cos φ2 ⋅ cos Δλ) ⋅ R 

:あなたは携帯緯度/長いと、隣接セル緯度/長い、隣接セルと携帯電話の間の距離を見つけるために、余弦定理を使用していたら、今Get current latitude and longitude android

:ここでは良い例です。例えば、次のように実装することができる。

θ = atan2(sin Δλ ⋅ cos φ2 , cos φ1 ⋅ sin φ2 − sin φ1 ⋅ cos φ2 ⋅ cos Δλ) 
where φ1,λ1 is the start point, φ2,λ2 the end point (Δλ is the difference in longitude) 
:見出しに関して

var φ1 = lat1.toRadians(), φ2 = lat2.toRadians(), Δλ = (lon2-lon1).toRadians(), R = 6371e3; // gives d in metres 
var d = Math.acos(Math.sin(φ1)*Math.sin(φ2) + Math.cos(φ1)*Math.cos(φ2) * Math.cos(Δλ)) * R; 

は、この式を使用します例えば、次のように実装することができ3210

:隣接セルからの信号強度を見つける

var y = Math.sin(λ2-λ1) * Math.cos(φ2); 
var x = Math.cos(φ1)*Math.sin(φ2) - 
     Math.sin(φ1)*Math.cos(φ2)*Math.cos(λ2-λ1); 
var brng = Math.atan2(y, x).toDegrees(); 

(このwebsiteの距離/見出し式の礼儀は)

別の問題です。技術(LTE/WCDMA/GSM)によっては、これが可能かもしれません。 Hereは、これを行う方法の一例ですが、すべてのテックタイプでこの方法では機能しない可能性があります。

+0

ご回答ありがとうございます。 –

関連する問題