質問: Toast.makeText(this, "例外が発生、位置情報のPermissionを許可していますか?", Toast.LENGTH_SHORT); toast.show(); //MainActivityに戻す finish(); } ``` 電波が悪く2度質問ボタンををしたところ2度質問してしまいました。すみません。
回答: Logで出力して気づいたのですが、 強制終了されてしまうため、finish()を呼ばないようにして、代わりにMainActivityへのStartActivityを呼びました。そうしたところ、エンドレスに何周も、エラーを繰り返しましたが、2回に1回は、正常に作動することがわかりました。 このような流れでした。 開始 connect 成功 select 成功 forが終わる。 またonCreate /////////ここから そして、fusedLocationが呼ばれ、 googleconnetを呼ぶ mGoogleApiClient.conect()を呼び出される そして、またfusedLocationが呼ばれる そして、また、mGoogleApiClient.connectedが呼ばれる そして、onConnectedがよばれる。 disconnectedでnot connectedとなり そして、if(currentLocation!=null で、elseとなる。 catchでGoogleApiCliCient is not connected となる finish()の代わりに、startActivityする しかしまだ、2つ目のconnectedが残っており unconnected nowとなり、 if(currentLocation!=null&& これで中に入れる //////////ここの間に同じ動作が2回ずつ行われる そして、selectして、それが終わると、 またonCreate()してfusedLocationが呼るという繰り返し、 この中で、///で囲んだところが2回同じ作業が繰り返されているため、 @onStart()のstartFusedLocation()を無くしました。そうしたところ、戻るボタンを押しても、エラーは発生しなくなりました。