① 原生态安卓格式化了,进系统必须联网,但是无论哪个网络或是热点都是“无互联网”怎么搞
android读写联系人,读和写权限:
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
android权限系统非常庞大,在android系统中做任何操作都需要首先获取android系统权限,以下是android权限大全:
访问网络
android.permission.INTERNET,访问网络连接,可能产生GPRS流量
android.permission.CHANGE_WIFI_STATE Wifi 改变状态
android.permission.ACCESS_WIFI_STATE WiFi 状态
android.permission.ACCESS_NETWORK_STATE 网络状态
录制视频
android.permission.CAMERA
android.permission.RECORD_AUDIO
android.permission.WRITE_EXTERNAL_STORAGE
底层访问权限
android.permission.CWJ_GROUP,允许CWJ账户组访问底层信息
手机优化大师扩展权限
android.permission.CELL_PHONE_MASTER_EX,手机优化大师扩展权限
控制定位更新
android.permission.CONTROL_LOCATION_UPDATES,允许获得移动网络定位信息改变
删除缓存文件
android.permission.DELETE_CACHE_FILES,允许应用删除缓存文件
删除应用
android.permission.DELETE_PACKAGES,允许程序删除应用
电源管理
android.permission.DEVICE_POWER,允许访问底层电源管理
应用诊断
android.permission.DIAGNOSTIC,允许程序到RW到诊断资源
禁用键盘锁
android.permission.DISABLE_KEYGUARD,允许程序禁用键盘锁
转存系统信息
android.permission.DUMP,允许程序获取系统mp信息从系统服务
状态栏控制
android.permission.EXPAND_STATUS_BAR,允许程序扩展或收缩状态栏
工厂测试模式
android.permission.FACTORY_TEST,允许程序运行工厂测试模式
使用闪光灯
android.permission.FLASHLIGHT,允许访问闪光灯
强制后退
android.permission.FORCE_BACK,允许程序强制使用back后退按键,无论Activity是否在顶层
访问账户Gmail列表
android.permission.GET_ACCOUNTS,访问GMail账户列表
获取应用大小
android.permission.GET_PACKAGE_SIZE,获取应用的文件大小
获取任务信息
android.permission.GET_TASKS,允许程序获取当前或最近运行的应用
允许全局搜索
android.permission.GLOBAL_SEARCH,允许程序使用全局搜索功能
硬件测试
android.permission.HARDWARE_TEST,访问硬件辅助设备,用于硬件测试
注射事件
android.permission.INJECT_EVENTS,允许访问本程序的底层事件,获取按键、轨迹球的事件流
安装定位提供
android.permission.INSTALL_LOCATION_PROVIDER,安装定位提供
安装应用程序
② Android系统 WebView是什么有什么用
现在越来越多的APP都内置了Web网页去加载视图,也就是我们常说的Hybrid APP混合应用,市场上很多平台都是这样做的,比如我们经常使用的淘宝、京东等电商平台。这些是如何实现的呢?在我们Android中有一个WebView组件,它就可以实现此类功能。它是Android中的原生UI控件,主要用于在APP应用中方便地访问远程网页或本地HTML资源,同时WebView也在Android中充当Java代码和JS代码之间交互的桥梁,实际上也可以将WebView看做一个功能最小化的浏览器。下面我们一起来看看WebView的一些常用的使用方法。
WebView是Android系统提供的一个能显示网页的系统控件,它是一个特殊的View,同时也是一个ViewGroup,可以有很多其他子View。在Android 4.4以下(不包含4.4)系统WebView底层实现是采用WebKit内核,而在Android 4.4及其以上Google采用了Chromium内核作为系统WebView的底层内核支持。在这一变化中Android提供的WebView相关API并没有发生较大变化,在4.4上也兼容低版本的API并且引进了少部分API。这里简单介绍下基于Chromium的WebView和基于WebKit的WebView之间的差异,基于Chromium的Webview提供了更广的HTML5、CSS3、JavaScript支持,在Android系统版本5.0上基于Chromium 37,WebView提供了绝大多数的HTML5特性支持,除此之外Chromium也支持远程调试(Chrome DevTools)。WebKit JavaScript引起采用WebCore JavaScript在Android 4.4上换成了V8能直接提升JavaScript性能。
二、作用
1、显示和渲染Web页面
2、使用html文件(网络上或本地assets中)作为布局
3、可与JavaScript交互调用
注: WebView控件功能强大,除了具有一般View的属性和设置外,还可以对Url请求、页面加载、渲染、页面交互进行强大的处理。
③ 华为手机高清通话怎么关闭
操作方法:以mate30Pro为例,打开华为mate30Pro,点击设置按钮,进入系统设置页面,点击“移动网络”选项,可以看到“volte高清通话”选项,将“volte高清通话”关闭即可完成操作,“高清语音通话”就是volte功能,可以提升手机的通话音质。
手机使用技巧:1、mate30Pro具有智能截屏功能,支持长截屏,在缩略图页面有长截屏按钮。
2、mate30Pro具有定时开关机功能,可以自定义开机或者关机的时间,进入系统设置页面,点击“智能辅助”选项,点击“定时开关机”,设置一个时间即可。
3、mate30Pro具有定位功能,可以设置APP定位权限,打开手机的系统设置页面,点击“安全和隐私”,找到定位服务,之后根据需要设置权限即可。
资料拓展:华为Mate30系列是首发EMUI10的机型。在外观上,EMUI10变化最为显着的就是快捷通知栏,EMUI10采用了更偏向于原生安卓的新风格。EMUI10在大面积用色上,引入低饱和度色彩的代表风格-莫兰迪色系。
④ Android系统,如何设置某个应用程序不允许访问网络
设置方法;以华为手机设置禁止使用手机网络操作为例:
1、首先如图所示,首先点击手机桌面中的设置。
⑤ 手机软件总是闪退
原因1:APP版本或者系统版本过低
APP版本过低,会出现与手机系统不兼容的情况,同样的,如果手机系统版本过低,也会满足不了APP的运行要求,就会出现闪退的情况。
处理方法:将手机APP升级到最新版本或者将手机系统升级到最新版本,重启手机即可解决该问题。
02
原因2:手机中毒
从不明来源的途径安装的手机应用软件,可能会携带有恶意代码,导致手机中毒或被杀毒软件拦截都会出现闪退的现象。
处理方法:使用杀毒软件对手机进行检查杀毒,卸载掉不明来源的软件,有需要时从正规渠道安装。
03
原因3:软件冲突
手机上安装的软件过多,因为各自优化的程度不同,很容易出现冲突导致闪退,特别是同类型的软件安装过多,就更容易出现这种现象。
处理方法:定期检查自己的手机,不用的应用可以及时卸载掉,同类型的软件尽量不要安装多个,部分应用可以用微信小程序代替使用。
04
原因4:缺少数据包
这一点主要是针对游戏应用,很多游戏应用由于缺少数据包也会造成闪退。
处理办法:先到应用官网下载和安装数据包,然后再运行游戏即可。
05
原因5:APP缓存过多
这一点主要存在于安卓手机,安卓系统会产生较多的缓存文件,超出手机的负荷时就会出现闪退现象。
处理方法:通过手机自带的手机管家定期对手机进行清理加速,特别是微信、QQ等占用内存较大的应用要定期清理缓存。或直接进入【设置】—【应用管理】—【全部】,找到出现状况的应用程序,清理缓存或数据。
06
原因6:手机后台运行程序过多
很多时候我们使用完一个应用,都习惯性的返回桌面,这样程序就依然还在后台运行,当打开的应用过多时,就很可能会导致闪退的现象。
处理方法:不使用某个程序时要真正退出而不是返回到桌面,苹果手机直接按两下HOME键,向上滑动应用即可关闭。安卓点击右侧按钮直接清理即可。
⑥ 红米note8pro账号锁被锁起来了,账号Id密码都忘记了怎么解
屏幕锁,解bl后线刷清楚全部数据。
流氓软件锁同上。
bl锁,去官方申请解锁bl权限后按照官方教程解bl锁。
账户锁,正规方法。
网络小米账号,找回密码或申诉。得到密码后解锁
破解。
解锁bl后刷定制包,刷后不要升级。我不会告诉你包去哪找。大部分包有暗扣不说还自带流氓软件,你打开别人赚钱拆不掉,就算用软件打包也避免不了暗扣。
(此处针对所有bl锁小米手机)bl锁无法解开,短接数据线3、5角(绿黑)进入高通9008。后线刷
特定机型拆机后短接pcb焊盘触点后进9008。如米5sp。
联发科机型关机音量下加电源同时插线。联发科工具自动深刷。
小部分机器有bug,adb命令行利用bug解账户锁,已知有小米note标配。
律动的音符,萦绕于耳边,丝丝缕缕,似暖阳呢语又如清风摇曳,每一份感情都不是一路平坦的,也有风雨也有荆棘,也有伤害也有泪滴,因为彼此真正的在意,才有不经意的自私,因为彼此害怕着失去,才有原谅后的珍惜,真正的感情,不是不吵不闹而是吵闹后依然在一起,不是没有心痛,而是心痛后学会如何相处相依,心动只是一时的美丽,心懂才有一生的不离不弃,抚思漫游,看枯梗残叶,在风中茕茕孑立,曲卷消香,把落寞的景致,在几许青墨绿意里,敛了一池的风雅和禅意,宁静的轻柔的诗意的弥漫,欣赏这清幽婉怡的意境,就像看如莲的青字,落在柔软萱白的素笺上,所念所想落墨别有洞天。
赏青衣江岸边,迎风招展的雾松,犹如白发魔女,微风中飘飘欲仙,观西雪蓑,祈愿来年风调雨顺,如意吉祥的寓意,眺望雪域高原,珠穆朗玛峰白雪皑皑,风光无限,雅鲁藏布江把春夏秋的真诚一起化成最美好的祝愿,流淌到祖国的大江南北,捧一朵朵天山上的雪莲花,撷一颗颗南山的红豆,寄给有情人,作为纯洁爱情的定情物,采一片片含羞的红枫,赠一株株傲霜铿锵的菊花,祝福冬日温暖开心,幸福甜蜜,万事如意心想事成,沐浴灿烂的阳光,祝事业蒸蒸日上兴旺发达,袖手水岸,酝生古韵的诗意,伫立在残叶清冽的烟波中,执手相看,岁月花间遇见阳光,千万花事,都有别样的红,唯卓尔不凡的花,风干了缱绻,素心也会沉静尘世苍茫,风月浸霜,红尘烟雨红妆,独绽寒枝,残迹留香,几许沧桑,留一径傲骨欣慰心绪。
秋已深,凋花卸了红妆,秋水寂无波澜,孤情瘦意,墨染了一池碎影,弦念清凉,昨日绝色的倾城,清寂安放,一缕遗落的幽香,沉淀了浮华,把寂色的种子,暂且隐藏在波下的青苔里,待冰雪融化,再度重逢,一池碧水之上,白莲朵朵,那开榭有度的风雅,便植在了心上,或许给心境涂上素色的画意,凋零才会有柔曼的诗韵,临风看浅黛,残容凝敛,三分生息,带着治愈的香息,将蓄发重生的梦,悄然勃发,今昔临近一池残荷的梦,借流殇,落几许清幽墨迹,眼底,风催枯蓬瘗馥香,心陌上洗尽铅华也显昂,陪着冬姑娘漫步于大自然
⑦ 如何在Android平台上支持Airplay协议
实现Airplay,最重要的有两步,第一步是:Airplay服务发布,让IOS设备能发现你;第二步:实现Airplay协议应答,让IOS设备能和
你交互。Airplay发布服务,Linux系统中原生的Zeroconf协议,用于发布网络服务。Android平台上并不支持Zeroconf协议。所以需要安装Linux版本的Avahi,Avahi是Zeroconf协议的Linux实现。Avahi服务发布管理系统,支持跨进程发布,其中跨进程的数据交互是通过DBUS-Service的。DBUS服务,Android原生系统就自带。
方法:
1 修改DUBS-Service(Andriod)服务的权限,默认是蓝牙才能访问,设置为系统级程序都可以访问。
2 编写一个新的服务【零配置网络发布服务ZeroconfAvahiService】,其中简单封装一下Avahi服务和Avahi-client。并在Android配置文件中,让该服务自启动。
3 AirplayServer程序中,创建Avahi-client,发布Airplay服务。如果IOS设备能发现您的Android设备,恭喜服务发布成功。
4 实现AirplayServer实现Airplay协议,完成与IOS设备的图像、视频数据的交互。Coding, Debugging, 总会成功的。
⑧ 安卓上有没有无需ROOT就可以禁用应用权限的东西
1 为什么Android总是事无巨细地告诉你应用索取的每一项权限?
相比Apple,Microsoft严格控制生态系统(从苹果给开发者的“App Store Guideline”可见一斑),只允许通过官方应用商店安装应用,并对每份上传进行仔细地审查而言,Android的开放就意味着,Google需要向 用户提供一系列用于为自己负责的流程、工具。所以在安装应用前,Android总是要事无巨细地告诉你,应用肯需要控制什么权限。
同样,开发者也制作了一系列易用的工具,用以鉴别可疑的应用程序,或是控制权限。
图1 Android 官方市场会强制提醒用
Andoird哪里开放了?
在Android中,用户能自由从本地安装应用,自由地对SD卡进行操作,自由选择应用市场。
如果愿意放弃保修,用户还能轻易地实行root,解锁基带(baseband)。只有一些产品会严密地锁定bootloader(如摩托罗拉)。
最重要的是,因为ASOP(Android源代码开放计划)的存在,绝大部分的Android代码都是开源的,开发者可以由此对Android系统进行 深入的修改,甚至可以自行编写一个符合Android规范的系统实例(如Cyanogen Mod)。正是因为ASOP,这篇文章才可能介绍多达5种原理不同的权限控制方法。
图2 Android开源计划的标志
开放的风险
不考虑Symbian,Windows Phone 6.5(及以下)平台,那么几乎所有的智能手机病毒都是Android平台的,甚至官方Android Market也闹过几次乌龙。在国内水货横行的市场,情况更是火上浇油,不法业者可以在手机的ROM,甚至是bootloader中做好手脚,让用户有病无法医。
在Android中,用户可以允许系统安装来自“未知源”(也就是非Google官方的,或手机预置市场的)应用程序。于是,移动平台最重要的门神------数字签名就被绕过了。
图3 Android 允许未知安装未知来源的应用程
出于Android的开放性,也有不允许“未知源”的反例:亚马逊的Kindle Fire平板使用了深度定制的Android,它只允许安装来自亚马逊官方商店的应用程序。
图4 亚马逊的 Kindle Fire 仅允许通过自带的市场安装应用
2 Android有哪些“权限”
首先需要明确一下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”对象。
图5 搜狗输入法的智能联系人功能
原生Android只提供了对“一刀切”式的管理,要么同意使用,否则就根本就不安装应用程序。当用户遇到希望使用程序的同时,又想禁止部分Permission的场合,他就无路可走。
于是,不少开发者就捣鼓出了“第三条道路”;可惜的是,没有一种方法能同时做到既不需要将手机固件Root,又完全不涉及对原始应用程序进行反向工程的方法。
Root
Root指获得Android所在的Linux系统的Root(根)权限,有了根权限,你才能对Linux做出任意的修改。iOS中的越狱 (Jailbreak) 相当于获得iOS系统的Root权限(iOS是一种类Unix系统,和Linux都使用Root的概念)。在已Root的设备中,通常都是使用一个 叫“Superuser”(简称SU)的应用程序来向许可的程序授以Root权限。
Bootloader的解锁(Unlock)
利用数字签名,Bootloader可以限定只有正确签名的系统可以被引导。在修改固件以获得Root以前,解锁Bootloader通常是必须的。安装第三方修改、编译的固件也需要解锁Bootloader。
基带(Radio)解锁
在Android系统中,基带是上层软件与手机中无线设备(手机网络,Wi-Fi,蓝牙等)的驱动程序之间的中介。国外的网络运营商很喜欢锁定基带,从 而保证用户只能使用运营商自己指定的sim卡。在我国,锁定基带是非法的,手机制造商、网络运营商也不可以通过锁定基带的方法对待违约客户。iOS的“解 锁”就是解锁iOS中的基带软件。
为什么要控制Android权限
鱼和熊掌不可兼得,Android的世界有很多自由,坏人也能自由地做坏事。它的生态系统很强调自主:用户可以自主地减小风险,仅使用官方市场的应用程序,也可以自主地解除安全限制,从而获得更多自由。因此,在遇到坏事的时候,用户也不得不自主一下:
1, 抵制不道德,乃至非法行为
几乎所有的Android安全软件都能对来电、信息进行控制,以减少骚扰。
另一方面,很多应用都会要求它们实际功能以外的权限,表现在非(主动)告知地搜集设备序列号,位置信息,诱使用户默认地上传联系人列表等方面。
更坏一点的应用程序,则会踏入犯罪的范畴,比如能偷偷发出扣费信息,或是作为黑客的偷窥工具。
2, 减少恶意软件的损害
恶意软件即便潜伏成功,也难以获得权限,从而减少损失。
3, 用户有权自主地在抑制应用程序的部分权限时,继续使用该应用程序,而只承担由于自行设置不当而带来的后果。
用户拥有设备的所有权,因此有权自主控制设备上的内容、传感器等对象的访问;同时有权(不)运行,(不)编译设备上的应用程序。
大多数应用程序在运行时,并未达成主动告知的义务,是失误;然而即使主动告知,用户还是可以不理会。
为什么Android官方市场的强制提醒权限的行为不属于主动告知:
通过Android官方市场,“打包安装器”安装应用程序时,所显示的“权限”仅是在安装包内AndroidManifest.xml声明的值,而非应 用程序实际上会调用的内容。该值仅用来表明Android系统能向应用授予的最大可能的权限。即便一个“Hello World”式的应用程序,也可以在AndroidManifest.xml中声明所有可能的Android Permission。
这就是说,在AndroidManifest.xml中声明的值与应用程序实际调用的权限有关联,但不等同,且这种提示是由Android系统负责实施的强制行为。
正确的理解是:“应用程序(被迫地)让Android系统告知用户,它在AndroidManifest.xml中所声明的事项。”
这意味着应用程序在使用重要权限前,依然需要自行、主动地通知用户相关事宜。
图6 应用程序须要AndroidManifest.xml中声明调用到的权限
然而,即便只是让一半的应用程序达到以上的标准,也是不可能的。应用程序需要通过收集用户信息,程序的错误日志。从而统计用户的喜好,改进程序。另一方 面,这也是发送精确广告但不追溯到用户身份信息的方式,这一点对于免费应用而言,是极其重要的。我们之所以能知道不同型号手机的占有率,应用软件的流行 度,是与这样的统计不可分离的。
一旦每个应用程序都专业地主动发出提醒,不专业的用户(大多数用户都是不专业的)通常会将之视为如同海啸警报一般的危机。
这么做对谁都没有好处------用户方的隐私权是毋庸置疑的,然而应用程序方面的获取信息记录的需求也是无可阻挡的。如果每个用户都打算阻止,只会落得被迫接受不平等条约的下场,在温饱以前,不会有人考虑小康的问题。
于是,现状就变得有趣:用户人享受着相同的服务;其中大部分用户出于不知情/好意,默默地向开发者、广告商提供了信息,剩下的少数用户则能阻断这种劳务。而作为维持Android平台的信息商人Google,只确保在它的地盘里,不会发生触碰底线的事情。
一句话总结:
设备是我的,不管你怎么说,反正我说了算,但我说的话大多是不算数的。
3 权限控制的方法
这里开始介绍各种控制Android权限的办法。可惜的是,几乎所有的手段都需要对设备进行Root,如果不这么做,则需要付出不小代价。
App Shield(国内常见的名字:权限修改器)
它是一个需要付费的Android应用,其原理是修改应用程序的apk安装包,删除其中AndroidManifest.xml文件内,用于声明权限的 对应“Android.Permission.*”条目,然后再用一个公开的证书对安装包重新签名(需要允许“未知源”),这样一来,应用程序就不会向系 统申请原先所需的权限。当应用运行至相应的流程时,系统将直接拒绝,从而达到用户控制权限的目的。
对于已安装的应用,AppShield也会按照同样方法制作好apk安装包,然后让用户先卸载原始的应用,再安装调整过的应用。除了该应用数字签名外,用户可以随时通过执行同样的流程,将吊销的权限恢复。
图7 AppShield
Apk文件的结构
Android应用都是打包成以.apk扩展名结尾,实际上是zip的文件格式。
一个合法的apk至少需要这些成分:
根目录下的“AndroidManifest.xml”文件,用以向Android系统声明所需Android权限等运行应用所需的条件。
根目录下的classes.dex(dex指Dalvik Exceptionable),应用(application)本身的可执行文件(Dalvik字节码) 。
根目录下的res目录,包含应用的界面设定。(如果仅是一个后台执行的“service”对象,则不必需)
Apk根目录下的META-INF目录也是必须的,它用以存放应用作者的公钥证书与应用的数字签名。
当应用被安装后,这个apk文件会原封不动地移至设备的data/app目录下,实际运行的,则是Dalvik将其中Classes.dex进行编译后 的Classes.odex(存放在Dalvik缓存中,刷机时的‘cache wipe就是清除Dalvik的odex文件缓存’)。
优点:
完全不需要Root,适用于所有版本的Android设备。不会损坏系统,可以吊销任意一项Android权限。
问题:
1,需要重新安装应用,该行为可能会丢失应用的配置、历史记录。
2,执行权限吊销的应用的数字签名会被更改,无法直接更新。对于那些设计不良(没有意料到‘不声明权限’情况的),或有额外自校验的应用,可能会无法运行。
3,无法用于设备上的预装应用,除非制造商好心地将该应用设置为“可以删除”的状态。
4,这个方法修改了apk包中的内容------尽管实际上AndroidManifest.xml和数字签名并不算是应用程序的本身,但修改它们可能引发着作权的问题。
5,需要开启“未知源”。
6,这是一个收费应用。
CyanogenMod 7.1(及以上版本)
Cyanogenmod是一款着名的第三方编写的开源Android ROM。
CM7.1加入了控制权限的开关,官方的名称是“Permission Revoking”,任何非系统/保护应用在安装后,可直接吊销任意一项权限,其效果等价于直接删除apk包中AndroidManifest.xml的 对应条目,但不会引发自校验的问题。CM的权限工具的作用等同于AppShield,无非是在Android自身的权限系统中添加了一个开关。
图8 Cyanogen Mod 7.1中的权限吊销(Permission Revoking)设定
优点:
免费,使用简便,可随时,任意地吊销、恢复非预装应用的任意一项权限;不存在数字签名的问题,因而不影响使用自校验的应用程序。
问题:
此功能仅在Cyanogen Mod 7.1及以上版本提供,无法用于其它rom。因为是由Android系统出面吊销权限,其实现原理与App Shield完全相同,同样的,应用程序会因为设计不良而出现崩溃。
Permission Denied
这是可以吊销任意Android应用(注意,不当地吊销系统应用的权限可能会导致手机固件损坏,无法启动)的任意权限,对权限的修改在重启后生效。
实现原理应该与Cyanogen Mod 7.1+完全相同,适用于任何已经Root的系统,因为一般的Android系统虽然事实上支持权限吊销,但没有像Cyanogen Mod那样放置接口,因此需要重启后才能应用权限配置。同样也有系统出面拒绝权限而导致的崩溃现象。
图9 Permission Denied免费版吊销应用程序权限的场景
优点:
效果与Cyanogen Mod中的权限吊销效果一致,且可吊销系统应用的权限。同时提供了免费与收费版本,免费版并没有基本功能的缺失。适用于所有版本号不低于1.6的Android设备。
问题:
调整后的权限需要重启才能生效。设计不良的应用会崩溃。不恰当的权限修改会损坏系统,导致无法开机。
PDroid
PDroid实际上是一个Android内核补丁加上一个用于管理的外部应用。补丁需要在Recover环境中刷入系统,也可以由开发者自行移植入系 统。该软件在Android ASOP 2.3.4代码基础上开发,仅适用于没有改动内核的Android 2.3系统,目前还未支持Android 4。
图10 PDroid的界面
为了避免Cyanogen Mod 7.1+权限吊销(Permission revoking)导致的崩溃问题,以及后台服务(如LBE,QQ手机管家等,PDroid的作者认为通过后台服务拦截权限并不是好办法),PDroid 并不阻止应用程序声明权限,但会在其实际索取相关信息时,予以阻止。通俗地说,就是签署协议但不执行。在PDroid的用户界面,用户能随时精确地控制涉 及隐私的各项权限。对于某些内容,除了阻止外,用户还可以伪造一个随机或指定的数据。
可控制的内容包括:
IMEI(可伪造)
IMSI(可伪造)
SIM卡序列号(可伪造)
手机号码(可伪造)
来,去电号码
SIM卡信息
当前蜂窝网络信息
(以上七者均来自Android.Permission.READ_PHONE_STATE)
GPS定位信息 (可伪造,来自Android.Permission.FINE_LOCATION)
基站定位 (可伪造,来自Android.Permission.COARSE_LOCATION)
系统自带浏览器的历史,书签(Android.Permission.BOOKMARKS)
联系人 (android.permission.READ_CONTACTS)
通话记录 (android.permission.READ_CONTACTS)
系统日志 (android.permission.READ_LOGS)
当前账户列表 (android.permission.GET_ACCOUNTS)
当前账户的授权码 (android.permission.USE_CREDENTIALS)
短信,彩信 (可能与这5个权限有关)
android.permission.READ_SMS
android.permission.RECEIVE_SMS
android.permission.SEND_SMS
android.permission.WRITE_SMS
android.permission.RECEIVE_MMS
日历 android.permission.READ_CALENDAR
PDroid的内核补丁并不通用,每一个Rom都需要特定的补丁。开发者除了提供了几个特定机型下Cyanogen Mod,HTC Sense修改版ROM的专用补丁外,还推出了一个补丁生成工具(PDroid Patcher),用户可以给自己的ROM生成专用的内核补丁。使用该Patcher需要安装JDK(java Development Kit)。
优点:
PDroid避免了通过Android系统进行权限吊销的导致的潜在崩溃问题,也不需要后台服务。对隐私信息的控制是最精细的。尽管设备必须Root,但应用本身不需要Root权限。
问题:
安装过程是最繁琐,最不可靠的,容易导致ROM损坏,适用范围也小,需要用户有相当的技能(能安装JDK,会刷机)才可使用;只提供对隐私有关权限的控制,不提供网络访问,的控制。以这些为代价,它几乎没有其它缺点。
LBE安全大师
实际上最常用的是以LBE为代表的通过一个Root权限的后台服务来拦截相关行为的工具。除了LBE外,还有QQ手机管家等应用。这里以LBE安全大师为例介绍。
图11 LBE安全大师
LBE是国内一个叫“LBE安全小组”开发的工具,支持Android2.0~4.0。它的核心功能是像杀毒软件一般,通过一个需要Root权限的后台 服务,劫持所有调用权限的行为,并放行用户许可的部分(其官方宣传为‘API级别拦截’)。它和PDroid一样几乎不会引发应用程序崩溃,它支持拦截几 个涉及用户的关键权限(LBE手机管家3.1/3.2):
读取短信 (android.permission.READ_CONTACTS)
联系人记录 (android.permission.READ_CONTACTS)
通话记录 (android.permission.READ_CONTACTS)
定位 (Android.Permission.COARSE_LOCATION
Android.Permission.FINE_LOCATION)
手机识别码 (与Android.Permission.READ_PHONE_STATE有关)
通话状态 (与Android.Permission.READ_PHONE_STATE有关)
发送短信(具体原理不明,同样类似于禁止这五个权限
android.permission.READ_SMS
android.permission.RECEIVE_SMS
android.permission.SEND_SMS
android.permission.WRITE_SMS
android.permission.RECEIVE_MMS)
拨打电话 (android.permission.CALL_PHONE)
通话监听 (android.permission.PROCESS_OUTGOING_CALLS)
除此以外,LBE还可以分别控制应用在Wifi,手机网络的联网权限,其原理是依靠IPtables防火墙,而非通过Android的“Internet”权限。
此外LBE手机管家还提供基于智能内容审查的短信拦截、来电归属地显示,以及禁用系统(保护)应用,进程管理,杀毒等功能。
LBE提供两个版本,一个叫“LBE安全大师”,是一个全面的手机管家类应用,更新比较频繁,另一个版本(LBE手机隐私卫士,LBE Security lite)仅提供权限方面的管理。
考虑到主要市场在国内,LBE的发行策略看上去有些奇怪,它在Google的官方市场并不发行最新版。通常只能只能在LBE的官方网页,以及国内的应用市场获得最新版本。
优点:
使用非常简单,功能强大而全面,风险很小,可以控制系统应用。适用范围广,有很多替代产品。
问题:
需要后台服务 (尽管蚕豆网有个评测,认为它对能耗几乎没有影响),不能控制所有的Android权限。
4 .自启动的控制
Android对后台服务有着最好的支持。
在Android中可以自由地开发一种称为‘Service’的后台运行的对象,加上没有苹果公司对应用程序的严格限制。诸如QQ挂机,即时调用第三方应用程序之类的形式都可以轻易实现。
为了全面支持后台服务,也为了适应移动设备资源紧张,不得不经常清理内存的问题,应用可在系统中设置触发器,当系统发生了某个特定特定事件时(系统启动,拨打电话,收发信息,安装、卸载应用,插上电源等,或应用程序自行定义的事件),就会触发启动应用程序。
AutoStarts 自启动管理
AutoStarts是一个收费应用,通过它,用户能了解系统中每一项程序会在什么场合下被触发运行。如果提供Root权限,则还能禁止这样的行为。
这里以Google Maps应用6.2版为例。默认情况下,这款应用总是会保持后台运行,并每小时向Google发送一次当前用户的位置信息。为了阻止这样的行为,需要联合 使用AutoStarts与任意一款进程管理应用:在AutoStarts中,阻止Google Maps的自行启动(如图),在每次使用完后,把Google Maps的进程杀掉。
图12 AutoStarts可以对自启动项目进行修改
5. 其他
Root带来的风险
有一个钻牛角尖的说法认为,一旦对设备进行了Root,便无安全一说,只要恶意程序一旦偷偷获得Root级别,一切都是空谈。
这种说法之所以钻牛角尖,是因为:一方面Android中的Root权限通常都是需要用户通过Superuser应用进行授权的,这已经够用,虽然不能 指望Superuser无懈可击;另一方面,控制Android权限主要是为了让应用程序在“灰色地带”的行为收敛一些,它们实际显然不是病毒等犯罪软 件。
着作权的问题 (作者不是法律方面的专家,以下言论仅供参考)
我们知 道,Android中的应用程序是基于Java语言编写的。而为了达到跨平台的目的,Java软件是以字节码(或叫中间代码,bytecode),而非计 算机能直接执行的机器码(Machine Code,有时也叫作Binary)的形式存在。因此执行Java软件时,需要一个Java虚拟机(Android系统中的Java虚拟机就是 Dalvik)负责解释运行,有的时候,虚拟机还会通过即时编译(JIT)的方法将字节码编译为机器码后再运行,以提高程序的执行效率。
这就出现一个很有趣的现象:
除非另行规定,作为设备的拥有者,用户总是可以自行决定如何使用软件,能自行决定程序能否访问用户自己的计算机(移动设备亦然)里面的各个内容、对象。
由此衍生出,在需要对代码编译、解释的场合,用户也能通过对编译器(解释器)的干预,来影响代码的执行效果。在Android中,用户还可以在Dalvik解释、编译的时候动手。
这是因为,着作权仅保护了软件代码不受到非授权的反向工程,未授权传播等侵犯。另一方面,对于Android上的Java,网页中的 javascript程序,赋予用户解释、编译的权利是程序能执行的先决条件;同时,软件发行者发通常也会主动提出放弃这种权利(表现为‘软件按原样提供 ’、‘不对使用软件造成的后果负责’等条目)
在编译、解释的过程中,需要通过汇编(Assemble),连接(Link)等方法将编译 好的对象(Object)、方法(Function)联系起来。默认情况下,这些行为是由原始的代码(源代码、中间代码)与编译器(解释器)决定的,但是 用户可以通过制约编译器(解释器)的设置,从而影响到最终代码。这么做是没有问题的。
还有一种,应用程序在安装后,会在系统中产生一些 缓存,或注册一些信息。当其中的内容有关用户数据时,读取或修改它们也是没有问题的。这就是所谓“只要是你的东西总是你的”;也是Cyanogen Mod、Permission Denied不会涉及版权问题的原因所在。
总之,一个Android应用之所以能运行的前提是:
1,首先,用户允许使用这个应用
这也可以理解成:用户安装了应用(以及因此设定的后台对象),购买了预装应用的手机。这一点即不影响应用程序的主动通知义务,也不影响用户事后的干预。
2,接下来,用户允许Dalvik对该应用使用“解释”,“JIT”的方法,从而该应用程序得以执行。
3,用户随时可以对该应用作出任意不违反版权的干预。
所以,在没有另行规定的前提下,用户总是可以自行决定,通过给应用程序分配自定义的权限;或是在应用程序调取内容,对象时予以阻断。同时,用户也需要自行承担因不当操作产生的后果。
附录:
1、 数字签名
数字签名是一种使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。数字签名可以轻易地验证完整性(正确性),合法签署的数字签名具有不可否认性。 (摘录自维基网络“数字签名”条目,有修改)
2、 版权声明
文章中引用的图标,图片或图片的部分,以及部分文字的引用,仅出于合理使用的目的,可能是持有人版权所有的。
3、 一些行为的说明
不道德行为
应用程序在启动时,或在主动告知以前,试图索取、收集电话号码、邮箱地址、位置信息等与个人身份直接关联的内容。如果是与个人关联,但不能直接联系到个人信息的IMEI等设备、SIM卡的串号,则稍微好一些。
附图1,不道德的应用程序在启动的第一时间就试图获取隐私信息
(新浪微博2.8),无论用户是否绑定了手机,应用都会第一时间记录当前手机的号码
(UC浏览器,快拍二维码),应用总是会不主动通知地记录设备的位置信息
没有实行主动通知的例子
附图2 这个应用程序在第一次启动时便开始收集位置信息,用户需要切换六次屏幕才能看到有关位置信息的提示。这项提示还有意忽略应用程序本身就会记录用户位置信息,即便用户并不使用需要位置信息的服务
主动通知的例子
附图3 主动通知就是在第一屏的醒目处,或用醒目的对比色等强调方式进行通告
⑨ 我想用我的笔记本作为热点,然后让手机开wifi通过连接笔记本上网,怎么弄
首先搭建热点有个条件
1:系统是WIN7可上网的电脑
2:无线网卡支持承载网络(最好更新到最新的无线网卡驱动)
❶.怎样看你网卡支不支持承载网络:以管理员模式运行CMD(开始→所有程序→附件→命令提示符) 输入命令行 netsh wlan show drive 如果支持 会显示为 是 。
2.下面就搭建承载网络 输入netsh wlan set hostednetwork mode =allow ssid=你想用的名称 key=你想用的密码(似乎密码至少8位还是13位)提示承载网络设置成功
例:netsh wlan set hostednetwork mode =allow ssid=123 key=123456789(注意空格)
3.此时在网络和共享中心的更改适配器设置里面可以看到一个多的虚拟网卡 “无线网络连接2” Microsoft Virtual WiFi Miniport Adapter.
这时,打开网络共享中心,在本地连接 的网卡属性里面 选择 共享, 下拉菜单选择无线网络连接2 ,然后选择 共享,两个对勾都点上。
4.打开无线网卡
输入命令行netsh wlan start hostednetwork 启动承载网络
5.用其他电脑或者手机,开始扫描wifi 用你设置的密码登陆就可以了!
6.不过每次开机这个站点并不会自动启动,还须手工启动,就是如上所说以管理员身份在命令提示符里再次运行 netsh wlan start hostednetwork。不过我采取的办法是建立一个批处理文件,用记事本输入以下内容:netsh wlan start hostednetwork,另存为“打开虚拟基站.bat”,不过还有一个问题,就是此命令只有管理员权限才能正常运行,所以你就打开无线网卡后,点右键“以管理员身份运行”
⑩ 谁知道用手机设置路由器的详细步奏
如果你有一台带WiFi功能的智能手机的话,是否想过能够让笔记本、iPad通过手机上网呢?虽然用手机共享网络给笔记本上网的方法比较多,可以用有线的USB方式,但是需要手机带有Modem无疑受到了硬件的限制。而通过无线WiFi共享的方式显然是最为简便的。今天就为大家介绍四个智能手机平台共享无线网络的方法,让大家在春节回家也能够随时随地上网、办公。
一、iPhone无线网络共享设置指南
iPhone作为智能手机里势力最庞大的队伍之一,共享无线上网功能这种功能自然不在话下。而且随着3G网络的发展,越来越多人用上了联通3G制式的手机卡,过年期间在没有ADSL的家里或者在没有WIFI网络的餐厅里,iPhone的无线网络共享功能就派上用场了。
1、iPhone上的设置
iPhone原生不支持WiFi共享功能(听说下一个版本会支持),所以需要安装第三方的软件。如果你的的iPhone(或者3G iPad)已经越狱了,笔者比较推荐“MyWi”这个无线路由共享软件,目前最高版本是MyWi4.12版,它提供了网络共享的选项,共有USB、蓝牙和WiFi三种连接方式。
iPhone安装MyWi软件
首先需要下载安装MyWi软件,它没有在itunes上架,因此只能自行下载。或者在Cydia里添加apt.178.com源,然后搜索下载。
MyWi的使用设置
MyWi的使用方法很简单,只要点击第一个开关就能使用,除此之外用户还可以设置共享WiFi的名称,而且还能为WiFi信号设置密码访问限制,防止别人偷用的你的网络。同时在屏幕顶部还会实时显示上下行的流量,十分实用。
连接无线WiFi演示
2、笔记本的设置
首先要保证笔记本的无线网络功能已经开启,就是屏幕状态栏下的本地连接的图标变成跟手机的信号条一样的图标就代表无线网络开启了。
二、Android无线网络共享设置指南
Android手机的崛起可谓是空前的,而Android 2.2系统的重大革新之一也就是原生支持WiFi网络共享功能。针对目前众多机器仍没有获得Android 2.2系统的升级,所以下面会分两部分跟大家介绍:
原生是Android 2.2的HTC Desire
1、Android 2.2系统下的设置
由于Android 2.2系统原生便支持无线路由功能,所以我们打开设置菜单,在“无线和网络”里面就可以找到“绑定与便携式热点”功能。进去后如下:
Android 2.2原生有无线WiFi共享功能
2、Android 2.1或以下手机的设置
由于Android 2.1或以前的系统并不预装了WiFi共享软件,所以要安装第三方的程序。不过,Android系统要安装这种涉及到比较底层的程序时也往往需要手机本生已经获得了管理员权限,也就是已经Root了。
我们先介绍一下Root的方法:目前已经有很多一键Root的apk软件,例如z4root或者Universal Androot。这些一键Root的软件大大简化了手机获取权限的过程,不过也并非全部机型都能够成功的。如果你的手机无法使用这些软件进行Root,那么还要往其他方向去找。
安装与软件界面
系统版本设置与Root的过程
一键Root之后,软件会提示你是否成功,如果成功了则可以进行下一步的操作了。
安装wireless_tether软件
提示捐助,错误提示
比较遗憾的是,并非每台手机都会很顺利地使用上这个软件,如果提示报错或者手机没有Root的话,要重新来过。也有些手机已经Root了,但是还是不成功。关键一点还是在于Android手机的系统和硬件上的不统一,使得难度十分大。
软件功能演示
设置菜单
另外,还有一个aNetshare的软件也可以共享,但是英文的操作界面并不容易操作:
aNetshare界面
更多的使用讨论也欢迎跟帖提出。不过Android 2.1或者以下的朋友只能抱着尝试的态度去,因为不是每台手机都支持的。
三、Windows Mobile平台Wifi共享设置
Windows Mobile平台有一款比较强大的网络共享软件,WMWifiRouter,通过这个软件用户可以用5种方式将网络共享。在这里小编抛砖引玉,给大家介绍一下如何通过Wifi共享手机GPRS或3G网络上网。
1、安装软件
首先下载WMwifiRouter软件,安装后点击开始菜单中的图标打开软件,如果是第一次用软件,就会进入如下的设置向导。用户首先要选择一个需要被共享的GPRS连接。
软件启动界面及设置向导
2、设置软件
在选择完需要共享的GPRS连接后,点击继续,根据说明写入创建的无线热点密码。点击继续后会出现背光和套餐提示,点击允许后会进入如下共享方式选择菜单,我们选择第一个,通过无线网络共享GPRS连接。
密码设置及共享方式选择
3、启动热点
选择方式后,软件会自动开始开启无线共享,等待到出现下方右侧的提示框时,表示无线热点开启成功。框中会提示无线网络的名称及密码,点击红色箭头返回界面。界面下方的图标会提示当前的手机电量,如果需要停止无线共享,点击X按键。
开启无线热点及提示窗口
4、连接热点
在开启手机无线热点后,打开电脑无线网卡会发现有"WMwifiRouter_8847”的热点,选择连接,并输入之前设置的密码就可以上网了。
软件还有其他一些设置选项,用户可以根据需要选择,一般情况下,只要按照前面的几个步骤,就可以轻松共享手机GPRS上网了。需要提醒的一点时,WM系统手机建立的热点用Android手机是搜索不到的。
四、塞班手机无线网络共享设置指南
诺基亚塞班系统可谓是目前拥有量最大的,塞班经历了S60v3、v5后也推出了Symbian^3。
这里指塞班包括S60v3、S60v5和Symbian^3系统,基本上都是通用的。塞班手机要做的是先签名,可以到一些塞班签证网站进行签名。之后就是安装一个JoikuSpot Light的软件。可以跳过
接入点设置,最好选择CMNET
成功启动,收发信息
塞班上面安装软件比较方便,不过带WiFi功能的塞班手机并非十分多,比较低端的塞班手机要说无缘了。
五、总结:
春运回家过年,如果能够发挥手中智能手机的功能充当无线路由的话,回家过年也不用那么与世隔绝了。不过除了iPhone的方法比较统一之外,其余三种系统的硬件都参差不齐,所以以上的使用方法也不一定奏效。