Java 在android studio中使用Dexter获取位置 .withPermission(Manifest.permission.ACCESS\u FINE\u位置) .withListener(新权限Listener(){ @凌驾 已授予许可的公共无效(PermissionGrantedResponse PermissionGrantedResponse){ if(ActivityCompat.checkSelfPermission(this,Manifest.permission.ACCESS\u FINE\u LOCATION)!=PackageManager.permission\u已授予&& ActivityCompat.checkSelfPermission(此,Manifest.permission.ACCESS\u\u位置)!=PackageManager.permission\u已授予){ 考虑到呼叫 //ActivityCompat#请求权限 //在此处请求缺少的权限,然后覆盖 //public void onRequestPermissionsResult(int-requestCode,字符串[]权限, //int[]格兰特结果) //处理用户授予权限的情况。请参阅文档 //对于ActivityCompat,请请求权限以获取更多详细信息。 返回; } mMap.setMyLocationEnabled(真); mMap.getUiSettings().setMyLocationButtonEnabled(true); mMap.setOnMyLocationButtonClickListener(新的GoogleMap.OnMyLocationButtonClickListener(){ @凌驾 公共布尔onMyLocationButtonClick(){ fusedLocationProviderClient.getLastLocation()文件 .addOnFailureListener(新的OnFailureListener(){ @凌驾 public void onFailure(@NonNull异常e){ Toast.makeText(getContext(),“”+e.getMessage(),Toast.LENGTH_SHORT).show(); } }) .addOnSuccessListener(新的OnSuccessListener(){ @凌驾 成功时的公共无效(位置){ } }) } }); }
ActivityCompat.checkSelfPermission(此,…) *这是显示错误,它显示所需的类型上下文 提供的许可证侦听器。Java 在android studio中使用Dexter获取位置 .withPermission(Manifest.permission.ACCESS\u FINE\u位置) .withListener(新权限Listener(){ @凌驾 已授予许可的公共无效(PermissionGrantedResponse PermissionGrantedResponse){ if(ActivityCompat.checkSelfPermission(this,Manifest.permission.ACCESS\u FINE\u LOCATION)!=PackageManager.permission\u已授予&& ActivityCompat.checkSelfPermission(此,Manifest.permission.ACCESS\u\u位置)!=PackageManager.permission\u已授予){ 考虑到呼叫 //ActivityCompat#请求权限 //在此处请求缺少的权限,然后覆盖 //public void onRequestPermissionsResult(int-requestCode,字符串[]权限, //int[]格兰特结果) //处理用户授予权限的情况。请参阅文档 //对于ActivityCompat,请请求权限以获取更多详细信息。 返回; } mMap.setMyLocationEnabled(真); mMap.getUiSettings().setMyLocationButtonEnabled(true); mMap.setOnMyLocationButtonClickListener(新的GoogleMap.OnMyLocationButtonClickListener(){ @凌驾 公共布尔onMyLocationButtonClick(){ fusedLocationProviderClient.getLastLocation()文件 .addOnFailureListener(新的OnFailureListener(){ @凌驾 public void onFailure(@NonNull异常e){ Toast.makeText(getContext(),“”+e.getMessage(),Toast.LENGTH_SHORT).show(); } }) .addOnSuccessListener(新的OnSuccessListener(){ @凌驾 成功时的公共无效(位置){ } }) } }); },java,android,google-maps,Java,Android,Google Maps,ActivityCompat.checkSelfPermission(此,…) *这是显示错误,它显示所需的类型上下文 提供的许可证侦听器。 我是android plase帮助的新手。试试这段代码,希望它能正常工作 .withPermission(Manifest.permission.ACCESS_FINE_LOCATION) .withListener(new PermissionListener() {
我是android plase帮助的新手。试试这段代码,希望它能正常工作
.withPermission(Manifest.permission.ACCESS_FINE_LOCATION)
.withListener(new PermissionListener() {
@Override
public void onPermissionGranted(PermissionGrantedResponse permissionGrantedResponse) {
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED &&
ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
// TODO: Consider calling
// ActivityCompat#requestPermissions
// here to request the missing permissions, and then overriding
// public void onRequestPermissionsResult(int requestCode, String[] permissions,
// int[] grantResults)
// to handle the case where the user grants the permission. See the documentation
// for ActivityCompat#requestPermissions for more details.
return;
}
mMap.setMyLocationEnabled(true);
mMap.getUiSettings().setMyLocationButtonEnabled(true);
mMap.setOnMyLocationButtonClickListener(new GoogleMap.OnMyLocationButtonClickListener() {
@Override
public boolean onMyLocationButtonClick() {
fusedLocationProviderClient.getLastLocation()
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Toast.makeText(getContext(), ""+e.getMessage(), Toast.LENGTH_SHORT).show();
}
})
.addOnSuccessListener(new OnSuccessListener<Location>() {
@Override
public void onSuccess(Location location) {
}
})
}
});
}
Dexter.withActivity(此)
.withPermissions(Manifest.permission.READ\u外部存储、,
清单.权限.写入(外部存储)
.withListener(新的MultiplePermissionsListener(){
@凌驾
已检查许可证上的公共无效(多个许可证报告){
if(report.areAllPermissionsGranted()){
//你喜欢这里吗
}否则{
Toast.makeText(EditEventActivity.this,“权限被拒绝!请从应用程序设置启用应用程序权限!”,Toast.LENGTH_LONG.show();
}
}
@凌驾
public void onPermissionRationalAlleshouldbeshown(列出权限、PermissionToken令牌){
token.continuePermissionRequest();
}
}).检查();
或者阅读第一步总是很难:-)继续推进。关于您的问题,请复制准确的错误陈述,以便我们更好地理解问题。谢谢
Dexter.withActivity(this)
.withPermissions(Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE)
.withListener(new MultiplePermissionsListener() {
@Override
public void onPermissionsChecked(MultiplePermissionsReport report) {
if (report.areAllPermissionsGranted()) {
//do you stuf here
} else {
Toast.makeText(EditEventActivity.this, "Permission Denied! plz enable application permission from app settings!", Toast.LENGTH_LONG).show();
}
}
@Override
public void onPermissionRationaleShouldBeShown(List<PermissionRequest> permissions, PermissionToken token) {
token.continuePermissionRequest();
}
}).check();