データベースに2つの文字列(緯度と経度)が格納されています。私のアプリケーションがインストールされているデバイスが特定の場所に到達すると、アクティビティが開始されます。if文で2つの文字列をチェックするにはどうすればよいですか?
これを解決するためにif文(下記のコードを参照)を書くことを考えましたが、うまくいきません。
これを行う別の方法はありますか?
誰でも私に提案を提供できますか?
tvLatitude.setText(String.valueOf(gps.getLatitude()));
tvLongitude.setText(String.valueOf(gps.getLongitude()));
String longi = tvLongitude.getText().toString();
String lati = tvLatitude.getText().toString();
String WorkLocationlongi = "REQUIRED LONGITUDE";
String WorkLocationlati = "REQUIRED LATITUDE";
mRootRef.child("Longitude").setValue(longi);
mRootRef.child("Latitude").setValue(lati);
if (longi.equals(WorkLocationlati)&& lati.equals(WorkLocationlongi)){
String dtbClockon = tvClock.getText().toString();
mRootRef.child("Dave_Clock_on_date").setValue(formattedDateOnly);
mRootRef .child("Dave_Clock_on").setValue(dtbClockon);
startActivity(new Intent(getBaseContext(), MainActivity.class));
}
else {
Toast.makeText(context,"Not in work area please enter the yard and try again",Toast.LENGTH_SHORT).show();
}
ありがとうございます。
どうしたのですか?それはコンパイルされますか?もし本当ならeval?と評価されるべきですか? ... – George
a)あなたはlatのために長い間混乱しましたか? "if(** longi **。equals(WorkLocation ** lati **)&& lati.equals(WorkLocationlongi))"? b)その場合、long/latは**正確に**同じでなければなりません。あなたはいくつかの "バッファ"を追加する必要があります。モバイルのGPSがより正確であれば、正確に同じ位置にぶつかるのが難しくなります。 – Fildor
「うまくいかない」とは何ですか? 'longi'と' lati'とは何が入っていますか? – QBrute