五种控制Android应用的权限的方法

  次阅读 作者:智能小宝 来源:互联网 2016-01-13 22:04 我要评论(0)

五种控制Android应用的权限的方法

这篇文章目的在于介绍Android系统上控制权限的方法,读者只要使用过Android,或是对智能机平台有所了解,就能看懂,不需要专门的编程知识。

1为什么Android总是事无巨细地告诉你应用索取的每一项权限?

相比Apple,Microsoft严格控制生态系统(从苹果给开发者的"App Store Guideline"可见一斑),只允许通过官方应用商店安装应用,并对每份上传进行仔细地审查而言,Android的开放就意味着,Google需要向 用户提供一系列用于为自己负责的流程、工具。所以在安装应用前,Android总是要事无巨细地告诉你,应用肯需要控制什么权限。

同样,开发者也制作了一系列易用的工具,用以鉴别可疑的应用程序,或是控制权限。

2Android有哪些"权限"

首先需要明确一下Android中的种种"权限"。Android是在Linux内核上建立一个硬件抽象层(Android HAL),通过Dalvik以及各种库来执行android应用的。在手机启动时,首先需要由Bootloader(HTC手机上称作Hboot)引导 Linux及手机上各个硬件设备的驱动程序,之后才启动Android系统。所以其实我们会涉及到四种不同涵义的权限:

Android权限(Permission)

这指Android中的一系列"Android.Permission.*"对象,是本文的中心内容。

Google在Android框架内把各种对象(包括设备上的各类数据,传感器,拨打电话,发送信息,控制别的应用程序等)的访问权限进行了详细的划 分,列出了约一百条"Android.Permission"。应用程序在运行前必须向Android系统声明它将会用到的权限,否则Android将会 拒绝该应用程序访问通过该"Permission"许可的内容。

比方说,搜狗输入法提供了一个智能通讯录的功能,用户可以在输入联系人 拼音的前几个字符,或首字母,输入法就能自动呈现相关联系人的名字。为了实现这个功能,输入法必须声明它需要读取手机中联系人的能力,也就是在相关代码中 加上声明"android.permission.READ_CONTACTS"对象。

3权限控制的方法

这里开始介绍各种控制Android权限的办法。可惜的是,几乎所有的手段都需要对设备进行Root,如果不这么做,则需要付出不小代价。

App Shield(国内常见的名字:权限修改器)

它是一个需要付费的Android应用,其原理是修改应用程序的apk安装包,删除其中AndroidManifest.xml文件内,用于声明权限的 对应"Android.Permission.*"条目,然后再用一个公开的证书对安装包重新签名(需要允许"未知源"),这样一来,应用程序就不会向系 统申请原先所需的权限。当应用运行至相应的流程时,系统将直接拒绝,从而达到用户控制权限的目的。

对于已安装的应用,AppShield也会按照同样方法制作好apk安装包,然后让用户先卸载原始的应用,再安装调整过的应用。除了该应用数字签名外,用户可以随时通过执行同样的流程,将吊销的权限恢复。

4自启动的控制

Android对后台服务有着最好的支持。

Android中可以自由地开发一种称为'Service'的后台运行的对象,加上没有苹果公司对应用程序的严格限制。诸如QQ挂机,即时调用第三方应用程序之类的形式都可以轻易实现。

为了全面支持后台服务,也为了适应移动设备资源紧张,不得不经常清理内存的问题,应用可在系统中设置触发器,当系统发生了某个特定特定事件时(系统启动,拨打电话,收发信息,安装、卸载应用,插上电源等,或应用程序自行定义的事件),就会触发启动应用程序。

5其他

Root带来的风险

有一个钻牛角尖的说法认为,一旦对设备进行了Root,便无安全一说,只要恶意程序一旦偷偷获得Root级别,一切都是空谈。

这种说法之所以钻牛角尖,是因为:一方面Android中的Root权限通常都是需要用户通过Superuser应用进行授权的,这已经够用,虽然不能 指望Superuser无懈可击;另一方面,控制Android权限主要是为了让应用程序在"灰色地带"的行为收敛一些,它们实际显然不是病毒等犯罪软 件。

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...