作者wheado (principal component QQ)
看板AndroidDev
标题[问题] 初学 onCreate 内部观念问题
时间Tue May 8 14:23:44 2018
先附上我的 code ,这是一个要求权限的简单练习
https://ideone.com/7Oc0El
第一个是我想在 onCreate 中简化我的 code
把里面内容写到一个 Permission class
其中里面有一个 askPermission 方法
而且 onRequestPermissionsResult 这个 callback 也在 Permission 中改写
这样我只要在 onCreate 中改写成 "Permission().askPermission" 就好了
也可以不用在 MainActivity 中看到 onRequestPermissionsResult
第二个问题是我想在 要求权限/已经有权限 以後才执行
Log.i(tag,"Ok, the permission is agree, then you can write some work!!!!")
我的这个例子每次 run 都会跑出这个 Log 然後模拟器出现要求权限
这样很不合理 = =
我想要求完权限再给我 Log
就是一个我要先要求权限
接着继续把 onCreate 跑完 => onStart => onResume
小弟初学在网路有看到一些例子
但是测试以後发现第一个问题可以部份解决,但第二个问题还是一样
求指教
以下是资料连结
https://stackoverflow.com/questions/50206419/override-fun-onrequestpermissionsresult-on-other-class
https://stackoverflow.com/questions/50171998/how-to-use-this-and-context-in-other-class-android-kotlin
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 203.71.94.20
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1525760631.A.D73.html
1F:推 t52101t: 这样那个Log要写在onRequestPermissionsResult里呀 05/08 15:25
2F:→ LZN: requestPermissions是non-block的行为, 会有另一个activity跑 05/08 16:10
3F:→ LZN: 在你的前景显示权限要求UI, 而你原本的activity会退到背景 05/08 16:12
4F:→ y3k: 你可以多写一点 就会知道onRequestPermissionsResult()是必要 05/09 00:10
5F:→ y3k: 的 有个很重要的概念是onCreate()、onStart()这类function 05/09 00:10
6F:→ y3k: 是"你写好这时候要干嘛 然後别人(呼叫这个APP的 也就是系统) 05/09 00:11
7F:→ y3k: 照他的步骤呼叫这些function 05/09 00:12