現在のセルを決定するなど、J2MEアプリケーションを使用して携帯電話の大まかな地理的位置をプログラムで決定する方法はありますか? この質問は、特に GPS 非対応デバイスに当てはまります。
私は地理的な座標のセットを探しているのではなく、ユーザーが場所固有のソフトウェアの動作を定義する機能を探しています。
あらゆるハードウェアのソリューションが高く評価されます。ただし、ソリューションが一般的であるほど、優れています。どうもありがとう!
現在のセルを決定するなど、J2MEアプリケーションを使用して携帯電話の大まかな地理的位置をプログラムで決定する方法はありますか? この質問は、特に GPS 非対応デバイスに当てはまります。
私は地理的な座標のセットを探しているのではなく、ユーザーが場所固有のソフトウェアの動作を定義する機能を探しています。
あらゆるハードウェアのソリューションが高く評価されます。ただし、ソリューションが一般的であるほど、優れています。どうもありがとう!
デバイスがJSR 179ロケーション API をサポートしている場合は、これを使用できます。前回これを調べたとき、これをサポートしているデバイスはほとんどありませんでしたが、それは数年前のことです。
これは私の最初の投稿1スタックオーバーフローです。
多くの電話でcellID(携帯電話が接続されている電話ポールのID)を取得できますSystem.getProperty(String arg)
。ここでは、いくつかのキーを試してcellIDが見つかるかどうかを確認する例を示します。私はこれを多くのSonyEricssonモバイルでテストしましたが、P1などのSymbianモバイルでない限り、正常に動作します。ネットを検索すると、モトローラ、サムスンなどのcellIDを見つけるためのキーがもっとたくさん見つかるでしょう。
try{
String[] cellIDTags = {"com.sonyericsson.net.cellid", "phone.cid", "Siemens.CID", "CellID"};
for(int i = 0; i < cellIDTags.length; i++){
cellID = System.getProperty(cellIDTags[i]);
if(cellID != null && cellID != ""){
location.setCellId(cellID);
break;
}
}
}catch(Exception e){
cellID = "";
}
多くのアプリケーションダウンロードサイトを閲覧しましたが、見つかりませんでした::しかし、これに関するいくつかの調査は、J2MEAPIを使用して独自のアプリケーションを構築するのに役立つと確信しています。DANによって与えられたコードが基地局番号を与えるように。セルが対応できる最も近いステーションを認識できます。実際には、セルは少なくとも6つのステーションを同時にキャプチャできるため、deamonkidが説明しているように、地域または都市の地理参照マップがあれば、マルチラテレーションを使用して位置を概算できます。アプリケーションは最も近いタワーからの距離と方向を計算し、マップにはすでにその基地局の座標が含まれています。したがって、空間座標(推定)確実性を計算できます。これで100メートルの精度が得られるかもしれません。これにはおそらく、ダウンロードできる信号強度測定アプリケーションが必要です。これに基づいてコードを生成できる場合は、共有してください。私もこれについて広範囲にわたる研究をしています。頑張ってください。
IMO、アプリケーションだけでそれを行うことはできません。携帯電話が現在ある位置を追跡するには、衛星または携帯電話の場合はセルタワーの助けが必要になります。これも約30〜50メートルの精度です。
ここでの計算は、セルタワーのソフトウェアまたは衛星のソフトウェアによって行われます。アプリケーションはリクエストを行い、それに応じて送信されるデータを受信するだけです。
繰り返しになりますが、使用するAPIは、携帯電話会社または衛星サービスによって提供されたものになります。これらはほとんど無料ではありません。彼らがそれを普通のユーザーにも売っているのかどうかはわかりません。ブラックベリーなどの大企業だけかもしれません。
場所を特定するための一般的な J2ME API があるとは思えません。
BlackBerry には、大まかな「セル」位置だけでなく、GPS API も取得するための特定の API があることは知っています。
残念ながら、現時点では、GPS ソリューションはメーカー独自のものです。