AppCompatActivity 和 Marshmallow 权限
AppCompatActivity and Marshmallow Permissions
我的应用程序使用 "dangerous" 权限,例如 READ_CONTACTS
等。我看到的所有支持这个新模型的例子都使用从 AppCompatActivity
派生的 类。我真的必须将子类 Activity 的活动更改为现在子类 AppCompatActivity
吗?在仍然使用活动的同时是否有其他方法可以做到这一点?当我进行更改时,我的应用程序崩溃了。
Do I really have to change my activities that subclass Activity to now subclass AppCompatActivity?
没有
Is there an alternative way of doing this while still using activities?
也是这样。 AppCompatActivity
中没有任何内容与运行时权限有关。无论您是继承自 Activity
、AppCompatActivity
还是 PhilodendronActivity
,您:
致电 checkSelfPermission()
(在您的 Context
或 static
版本 ContextCompat
上)查看您是否拥有权限
调用 requestPermissions()
(在您的 Activity
或 ActivityCompat
上的 static
版本)向用户请求权限
在您的 Activity
上实施 onRequestPermissionsResult()
以获得 requestPermissions()
调用的结果
因此,例如,none 这些示例应用程序使用 AppCompatActivity
:
我的应用程序使用 "dangerous" 权限,例如 READ_CONTACTS
等。我看到的所有支持这个新模型的例子都使用从 AppCompatActivity
派生的 类。我真的必须将子类 Activity 的活动更改为现在子类 AppCompatActivity
吗?在仍然使用活动的同时是否有其他方法可以做到这一点?当我进行更改时,我的应用程序崩溃了。
Do I really have to change my activities that subclass Activity to now subclass AppCompatActivity?
没有
Is there an alternative way of doing this while still using activities?
也是这样。 AppCompatActivity
中没有任何内容与运行时权限有关。无论您是继承自 Activity
、AppCompatActivity
还是 PhilodendronActivity
,您:
致电
checkSelfPermission()
(在您的Context
或static
版本ContextCompat
上)查看您是否拥有权限调用
requestPermissions()
(在您的Activity
或ActivityCompat
上的static
版本)向用户请求权限在您的
Activity
上实施onRequestPermissionsResult()
以获得requestPermissions()
调用的结果
因此,例如,none 这些示例应用程序使用 AppCompatActivity
: