使用kotlin在android下获取位置

这篇博客介绍了如何在Android应用中使用Kotlin获取位置信息,特别是针对Android 6.0及以上版本的运行时权限模型进行了解析。内容包括Android M的权限变化、权限组的概念以及获取位置权限的代码示例。
摘要由CSDN通过智能技术生成

14年毕业一直从事delphi桌面开发,尝试着去转android,google发布了官方开发语言,觉得是一个机会,所以尝试使用kotlin开发,在获取位置信息的时候遇到了一下问题,先记录如下,以便以后查阅。

参考资料:

1.探索android6.0的权限模型 http://blog.csdn.net/u014254481/article/details/50338237

2.Android M 新的运行时权限开发者需要知道的一切,android开发者

http://www.android100.org/html/201509/01/178112.html

3.android中通过GPS或NetWork获取当前位置的经纬度

http://blog.csdn.net/cjjky/article/details/6557561 

权限模型

之前在旧的权限模型下用户在安装app时就不得不去授予应用各种各样的权限,而这个app甚至都还没有被使用过。这也就意味着用户必须在使用某个app之前,就对它持有某种程度的信任,而对于很多用户来说,这可能会直接影响到他们决定是否要安装这个应用程序。 在Android-M中,权限请求列表会大大缩减,而且只会出现在当它们是必需之时。

权限限制被整理成了八个不同的权限组:

在Android-M中,如果是同属于一类的权限,就会被整理到一个组别之下,这个组别将会在用户发出确切请求时来申请获得具体的权限,所以举例来说,如果要获得“读取日历”(READ_CALENDAR)的权限,那用户就会被提示是否授予“日历”权限。

这些权限组别中,很多都包含了好几个具体权限,可表现为以下分组:

                             每个权限组包含很多具体权限

运行时的权限模型如下:

                                          系统需要做一系列检查来允许你或者用户继续操作

 

下面简单粗暴上代码:

class MainActivity : AppCompatActivity() {
    //lateinit 延后初始化,定义了只能在onCreate中初始化的全局变量
    private lateinit var textView: TextView
    private lateinit var locationManager: LocationManager

    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值