我试图通过阅读文档、使用 AI 并构建最基本的请求权限应用程序来更好地理解权限,以便我可以更好地分析它,但我收到了“ACCESS_COARSE_LOCATION”和“ACCESS_FINE_LOCATION”未解析参考的错误我的代码中到处都是,但我不明白。我已经在清单中声明了它们,所以不应该有错误。 这是代码:
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
PermissionsTheme {
Surface( modifier = Modifier.fillMaxSize()
){
val context = LocalContext.current
val requestPermissionLauncher = rememberLauncherForActivityResult(
contract = ActivityResultContracts.RequestMultiplePermissions() ,
onResult = {permissions ->
if(permissions[Manifest.permission.ACCESS_COARSE_LOCATION] == true
&& permissions[Manifest.permission.ACCESS_FINE_LOCATION] == true){
...
}else{
val rationaleRequired = ActivityCompat.shouldShowRequestPermissionRationale(
context as MainActivity,
Manifest.permission.ACCESS_FINE_LOCATION
) || ActivityCompat.shouldShowRequestPermissionRationale(
context as MainActivity,
Manifest.permission.ACCESS_COARSE_LOCATION
)
if(rationaleRequired){...}else{...}}})
Column() {
Button(onClick = {
requestPermissionLauncher.launch( arrayOf(
Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.ACCESS_COARSE_LOCATION ))}) {Text(text = "Get Location")}}}}}}}
这是我的清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<application
ufeff
我的代码中到处都出现“ACCESS_COARSE_LOCATION”和“ACCESS_FINE_LOCATION”未解析引用的错误
这表明您缺少常量的导入:
import android.Manifest