OnRequestPermissionsResultの公式サイトの間違い
もう少し早く気がついてもよかったのですが、デバッグ中に気がつきました。
公式サイトでは、permissions[0]をACCESS_FINE_LOCATIONと==で比較していますが、文字列の比較なので、.equalで比較しないといけません。
公式サイトのコーディングの間違いです。
修正前
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults){
if (requestCode == REQUEST_FINE_LOCATION) {
if (permissions.length == 1 && permissions[0] == (Manifest.permission.ACCESS_FINE_LOCATION) && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
修正後
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults){
if (requestCode == REQUEST_FINE_LOCATION) {
if (permissions.length == 1 && permissions[0].equals(Manifest.permission.ACCESS_FINE_LOCATION) && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
参照サイト:
位置データ | Google Maps Android API | Google Developers