我有这个错误“ContextCompat 在当前上下文中不存在”和“PackageManager 不包含 PERMISSION_GRANTED 定义”

And*_*ñoz 1 c# android xamarin runtime-permissions

当我创建方法输出错误“ContextCompat 在当前上下文中不存在”和“PackageManager 不包含定义 PERMISSION_GRANTED”.. 知道我是否应该添加任何特殊指令。谢谢

\n\n

方法

\n\n
private void CheckSMSStatePermission()\n{\n\nint PermissionCheck = ContextCompat.CheckSelfPermission(this, Manifest.Permission.SendSms);\nif (PermissionCheck != PackageManager.PERMISSION_GRANTED)\n{\n    Toast.MakeText(Activity,  "No se tiene permiso para enviar SMS.", ToastLength.Short).Show();\n    ActivityCompat.requestPermissions(this, new String[] { Manifest.Permission.SendSms }, 1);\n}\nelse\n{\n    Toast.MakeText(Activity, "Se tiene permiso para enviar SMS!", ToastLength.Short).Show();\n}\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

错误1

\n\n
   Severity Code Description Project Project category Path File Line Column \n   Category Source Status deleted Tool\n   Error CS1503 Argument 1: can not be converted from                      \n \'LoginSystem.Authorization\' to \'Android.Content.Context\' LoginSystem 1 C: \\ \n  Users \\ Lenovo \\ documents \\ visual studio 2017 \\ Projects \\ LoginSystem \\ \n   Documents \\ visual studio 2017 \\ Projects \\ LoginSystem \\ LoginSystem \\ \n   Authorization.cs 229 70 Active Compiler IntelliSense Compiler\n
Run Code Online (Sandbox Code Playgroud)\n\n

错误2

\n\n
   Severity Code Description Project Project category Path File Line Column \n   Category Source Status deleted Tool\n   CS0117   \'PackageManager\' no contiene una definici\xc3\xb3n para \n \'PERMISSION_GRANTED\'   LoginSystem 1   C:\\Users\\Lenovo\\documents\\visual \n  studio 2017\\Projects\\LoginSystem\\LoginSystem  \n  C:\\Users\\Lenovo\\documents\\visual studio \n  2017\\Projects\\LoginSystem\\LoginSystem\\Autorizacion.cs 230 51  Compiler    \n  IntelliSense  Activo  Compilador\n
Run Code Online (Sandbox Code Playgroud)\n

Sus*_*ver 5

如果您尝试使用ContextCompat.XXXX您的 Activity 子类,则需要来自AppCompatActivity(不是Activity...)。

AppCompatActivity在 nuget 包中可用Xamarin.Android.Support.v4::

<package id="Xamarin.Android.Support.v4" version="25.4.0.2" targetFramework="monoandroid71" />
Run Code Online (Sandbox Code Playgroud)

添加该包并将其更改ActivityAppCompatActivity