應用接入支付寶的sdk,需要申請一些權限。
這裡是kotlin的代碼:
對了:6.0以後有3組,27個權限是需要動态申請的,具體,百度吧。
下面申請了兩個權限(要在manifest檔案注冊哈)
//1、首先聲明一個數組permissions,将需要的權限都放在裡面
val permissions = arrayOf(Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_PHONE_STATE)
val mPermissionList = ArrayList<String>()
val mRequestCode = 0x1//權限請求碼
fun initPermission() {
mPermissionList.clear()
for (permission in permissions) {
if (ContextCompat.checkSelfPermission(
[email protected],
permission
) != PackageManager.PERMISSION_GRANTED
) {
mPermissionList.add(permission)
}
}
if (!mPermissionList.isEmpty()) {
// 後續操作...
ActivityCompat.requestPermissions([email protected], permissions, mRequestCode)
} else {
Toast.makeText([email protected],"全部授予!",Toast.LENGTH_SHORT).show()
}
}
//重寫
override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<out String>, grantResults: IntArray) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults)
when (requestCode) {
0x1 -> for (i in 0 until grantResults.size) {
if (grantResults[i] != PackageManager.PERMISSION_GRANTED) Toast.makeText(this,"您有未授予的權限,可能影響使用",Toast.LENGTH_SHORT).show()
}
}// 授權結束後的後續操作