gaggitのブログ

コーディング、ガジェット、TIPS関連、FX

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) {

f:id:gaggit:20160624203458p:plain

 

参照サイト:

位置データ  |  Google Maps Android API  |  Google Developers