そして、私は出口を探し始めました。 まず、 チャットとの簡単な協議と議論が行われ 、その後、昼食後、決定が下されました。
携帯電話があり、email2smsオペレーターサービスがあります。 したがって、私の場合、タスクは単純に、人間が読める1000文字以下のテキストを取得するだけです。 しかし、最初に私は思考の流れを説明しようとします。
- 不正確であり、前述のオペレーターのいずれかのSIMカードがないために、opsによって提供される追跡サービスをすぐに追跡します。
- OSMには優れた検索機能があります( habrausersが発見したように 、 罪がないわけではありませんが、受け入れられます)。 しかし、反対方向に回して、送信された座標を使用して近くの地上オブジェクトの名前を取得するとどうなりますか。 私のタスクはそれと何の関係がありますか?..そしてそれとは何の関係もありません! ランドマークに関しては、テキストはより人間に読みやすいものにする必要があります。 一般的に、このアイデアは興味深いものであり、後から残す必要があります。 サイトの作者は、zashashnikに何かを持っています。
- 「観測値は以前の測定値から350メートル北に移動しました」-適切であるように見えますが、その後、何らかの方法ですべてのポイントを保存する必要があります。 最後の2つでも...このホスティングはどこで入手できますか?
- 事前にWPTを調整し、それらに到達したら、デバイスにメッセージをドロップさせます。 さて、ここでまず、ルートは事前に知られておらず、目的地だけがわかっています。 第二に、そのようなアプリケーションは見つかりませんでした。 以下について。
- したがって、常に応答性の高いjuick_pplではなく 、ここでは何も助けになりませんでした 。
- 「観測」-「比較的」-「目的地」...ユーリカ!
したがって、市場の100500のアプリケーションは、OsmAndとまったく同じように実行できます。トラックを収集し、地図上に位置を表示し、座標を共有します。 問題は、メニュー項目「共有」を押すだけでそれらが分割されることであり、訓練されていないAndroidユーザーの手動アクションへの依存は除外されるべきです。 そして、それを言うために-座標のペア( lat 、 lon )は、壁のフレームにぶら下がっているのに適していますが、オブジェクトにすでに到達した場所を伝えません。 他の適切なオプションが見つかりませんでした。おそらく十分な時間がなかったでしょう。 OruxMapsのみに言及します-間違いなく便利で非常に機能的なプログラムです。 非常に機能的で、震えている膝を怖がらせました。 私は彼女の勉強を後でするつもりです...
この時点で、5分ごとに受信するメッセージの形式について明確なアイデアが形成されました。「 XXX km宛先まで 」、これで十分です。 あまり一般的ではないかもしれませんが、設定できる最大値は5分です。 email2smsの数のおよその制限は1日あたり100です。 それは8時間全体で十分です、それは良いことです。
突然、私たちは、データベースやその他の機能なしで、非常に単純なphpスクリプトを配置するという条件で、ホスティングを見つけることができました。 それでは、コーディングを始めましょう。 ブックマークからのサイト( GIS-LAB.info 、なぜ非表示)には、既成のアルゴリズム「球面上の2点間の距離と初期方位角の計算」による大きな円の説明があり、 PHPで歪んで歪んで改造されています。
<?php # $slat=53.393055555556; $slon=58.755555555556; $flat=55.3; $flon=61.5; #pi - pi, rad - () $pi = pi(); $rad = 6372795; # $lat1 = deg2rad($slat); $long1 = deg2rad($slon); $lat2 = deg2rad($flat); $long2 = deg2rad($flon); # $cl1 = cos($lat1); $cl2 = cos($lat2); $sl1 = sin($lat1); $sl2 = sin($lat2); $delta = $long2 - $long1; $cdelta = cos($delta); $sdelta = sin($delta); # $y = sqrt(pow($cl2*$sdelta,2)+pow($cl1*$sl2-$sl1*$cl2*$cdelta,2)); $x = $sl1*$sl2+$cl1*$cl2*$cdelta; $ad = atan2($y,$x); $dist = $ad*$rad; # $x = ($cl1*$sl2) - ($sl1*$cl2*$cdelta); $y = $sdelta*$cl2; $z = rad2deg(atan(-$y/$x)); if ($x < 0) $z = $z+180; $z2 = ($z+180.) % 360. - 180.; $z2 = - deg2rad($z2); $anglerad2 = $z2 - ((2*$pi)*floor(($z2/(2*$pi))) ); $angledeg = rad2deg($anglerad2); echo 'Distance >> ' . $dist . ' [meters]'; echo '<br/>Initial bearing >> ' . $angledeg . ' [degrees]'; ?>
距離>> 276805.84112453 [メートル]
初期方位>> 39 [度]
制御の例として、旅行の方向と距離にほぼ対応する空港のポイントが取得されます。
MQFとCEK間の距離
距離は次のように計算されています:277キロメートル(173マイル)
うまくいきました! 関数を作成します。最初の方位角は不要で、単純化のために捨てられます。 OsmAnd 0.7.1でライブトラッキングが最初に表示された方向にデータを送信することを忘れずに、欠落している機能を添付します。

<?php function distance($llat1,$llong1,$llat2,$llong2) # { //[......] return $dist; } import_request_variables('G', 'hhsb_'); // - . ! # c - current; f - final; s - start $d1 = distance($hhsb_clat,$hhsb_clon,$hhsb_flat,$hhsb_flon); $d2 = distance($hhsb_clat,$hhsb_clon,$hhsb_slat,$hhsb_slon); # $emailfrom = $hhsb_rpl; $replyemail = $emailfrom; $emailto = $hhsb_eml; $headers = "MIME-Version: 1.0\r\n"; $headers .= "From: ".$emailfrom."\r\n"; $headers .= "Reply-To: ".$replyemail."\r\n"; $headers .= "X-Priority: 3 (Normal)\r\n"; $headers .= "X-Mailer: yourhoster.com\r\n"; $headers .= "Content-Type: text/plain; charset=Windows-1251\r\n"; $headers .= "Content-Transfer-Encoding: 8bit"; $message = "Distance >> ".$d1." to final destination and ".$d2." from start (meters)\r\n"; $message .= "Speed >> ".round($hhsb_speed,2)." (m/s)"; $subject = "distance"; mail($emailto, $subject, $message, $headers); # $esya = 'http:///?'.$hhsb_clat.':'.$hhsb_clon.':'.$hhsb_hdop.':'.$hhsb_alt.':'.$hhsb_speed.':'.$hhsb_usr.':'.$hhsb_n; $ch = curl_init($esya); $res=curl_exec($ch); curl_close($ch); $ans=json_decode($res); echo $ans->response; //{"s":1} -, ?>
非常に重要な段階は、OsmAndでフォームのライブ追跡の行Webアドレスを記述することです。
h͇t͇t͇p͇://hosting_does_not_advertise/fd.php?clat={0}&clon={1}&hdop={3}&alt={4}&speed={5}&slat=53.393&slon=58.756&flat=55.3&flon=61.5&eml=emailto@gmail.com&rpl=emailfrom@mail.ru&usr=[osmohash]&n=[num]

同じ概念で
... がんばって ! アンドロイドを充電するために残っています。 結局のところ、あなたが充電するために
特定された欠点のうち:
- 最大間隔は5分です、もっと欲しいです。 理想的には、一般に、リストから選択するのではなく、数字を入力できるようにします。
- 2時間目の終わりまでに、アプリケーションは停止しました。誰が試したのかは明確ではありません。 私はアンドロイドが台無しになったと思う、なぜなら ユーザーはこれまでずっとアクティブではありませんでした。最初のデータ転送が行われるとすぐに、デバイスはすぐにバッグに現れ、定期的に信号を送信しました。 私はパニックを引き起こし、OsmAndを復活させるように頼まなければなりませんでした。 管理、OK。
- トレーニングを受けていないユーザーに依存関係があります-リモートで無効にしないでください。 指示は役に立たなかった、見づらい...到着時に「トラッカー」の電源を切るように依頼する方が簡単であることが判明した。

距離>> 29から最終目的地まで、開始から247194(メートル)
速度>> 0.0(m / s)