大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
点击“额外暗淡(ExtraDim)”的功能。
成都创新互联公司提供成都网站建设、成都网站设计、网页设计,成都品牌网站建设,1元广告等致力于企业网站建设与公司网站制作,十余年的网站开发和建站经验,助力企业信息化建设,成功案例突破上千多家,是您实现网站建设的好选择.
旨在解决显示屏亮度不够低的问题,允许系统亮度进一步变暗,超出OEM可能设定的范围,就出现了这个bug。
这个功能以前被称为“减少明亮的颜色”或“减少亮度”,“额外暗淡”可以“使你的屏幕变暗,以便阅读时更加舒适”。该功能适用于那些“手机默认的最低亮度仍然太亮”的情景,或者“在黑暗的情况下使用你的手机,比如晚上或睡前在黑暗的房间里”。
一、前言
这系列文章是自己在平时开发过程中遇到的问题。之前只是记在云笔记上面,现在整理一下,发出来共享。
ps:像那些什么没有注册Activity呀,权限呀等最基本的就不再赘述。
二、ADB连接异常
有时我们发现,即使自己从任务管理器里面把adb.exe给干掉了,但还是不行,这时,你就可以尝试以下操作:
[2014-07-30 17:09:11 - QtActivity] The connection to adb is down, and a severe error has occured.
[2014-07-30 17:09:11 - QtActivity] You must restart adb and Eclipse.
[2014-07-30 17:09:11 - QtActivity] Please ensure that adb is correctly located at ‘D:\InstallFile\AndroidDevelop\ADT\sdk\platform-tools\adb.exe’ and can be executed.
adb起动失败:
1,杀掉其它的adb.exe看,如果不行,
2,看sdk\tools路径下面有没有
hprof-conv.exe
如果有,则把它复制到sdk\platform_tools下
3,如果没有,刚看sdk\platform_tools下有没有
hprof-conv.exe
如果有,刚复制到tools下。
4,如果两者都没有,刚下一个
hprof-conv.exe
三、java.lang.IllegalStateException: Activity has been destroyed
这个异常在切换Fragment中比较容易出现,稍不注意就会出现如下异常:
FATAL EXCEPTION: main12-0909:20:14.689: E/AndroidRuntime(31223): java.lang.IllegalStateException: Activity has been destroyed12-0909:20:14.689: E/AndroidRuntime(31223): at android.support.v4.app.FragmentManagerImpl.enqueueAction(FragmentManager.java:1365)12-0909:20:14.689: E/AndroidRuntime(31223): at android.support.v4.app.BackStackRecord.commitInternal(BackStackRecord.java:595)12-0909:20:14.689: E/AndroidRuntime(31223): at android.support.v4.app.BackStackRecord.commit(BackStackRecord.java:574)12-0909:20:14.689: E/AndroidRuntime(31223): at cn.com.topsky.community.tfd.DongTaiFragment.init(DongTaiFragment.java:209)12-0909:20:14.689: E/AndroidRuntime(31223): at cn.com.topsky.community.tfd.DongTaiFragment.onCreateView(DongTaiFragment.java:68)12-0909:20:14.689: E/AndroidRuntime(31223): at android.support.v4.app.Fragment.performCreateView(Fragment.java:1500)12-0909:20:14.689: E/AndroidRuntime(31223): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:927)12-0909:20:14.689: E/AndroidRuntime(31223): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1104)12-0909:20:14.689: E/AndroidRuntime(31223): at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:682)12-0909:20:14.689: E/AndroidRuntime(31223): at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1467)12-0909:20:14.689: E/AndroidRuntime(31223): at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:440)12-0909:20:14.689: E/AndroidRuntime(31223): at android.os.Handler.handleCallback(Handler.java:605)12-0909:20:14.689: E/AndroidRuntime(31223): at android.os.Handler.dispatchMessage(Handler.java:92)12-0909:20:14.689: E/AndroidRuntime(31223): at android.os.Looper.loop(Looper.java:154)12-0909:20:14.689: E/AndroidRuntime(31223): at android.app.ActivityThread.main(ActivityThread.java:4624)12-0909:20:14.689: E/AndroidRuntime(31223): at java.lang.reflect.Method.invokeNative(Native Method)12-0909:20:14.689: E/AndroidRuntime(31223): at java.lang.reflect.Method.invoke(Method.java:511)12-0909:20:14.689: E/AndroidRuntime(31223): atcom.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:809)12-0909:20:14.689: E/AndroidRuntime(31223): atcom.android.internal.os.ZygoteInit.main(ZygoteInit.java:576)12-0909:20:14.689: E/AndroidRuntime(31223): at dalvik.system.NativeStart.main(Native Method)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
经查,说这个是当前android-support-v4版本的一个bug,因为在当fragment进行到detached状态时,它会重置它的内部状态。
然而,它并没有重置mChildFragmentManager.这导致在Fragment重新attach时,它(fragment)没有重新attachm childFragmentManager,从而引发了上面的异常.
解决方案:
在每个调用getChildFragmentManager()的fragment中复写onDetach()方法:
@OverridepublicvoidonDetach() {super.onDetach();try{Field childFragmentManager = Fragment.class.getDeclaredField("mChildFragmentManager");childFragmentManager.setAccessible(true);childFragmentManager.set(this,null);}catch(NoSuchFieldException e) {thrownewRuntimeException(e);}catch(IllegalAccessException e) {thrownewRuntimeException(e);}}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
四、java.lang.IllegalArgumentException: Illegal character in query at index
这个异常,在我们拼接请求参数时,可能会碰到,原因是里面的特殊字符转换异常。解决办法如下:
url转换问题
String url = baseUrl + “?” + “name=” + name + “age=” + age;
url = url.replaceAll(“”, “%26”);
url = url.replaceAll(” “, “%20”);
解释如下:
特殊符号替换符号
?%3F
%26
|%124
=%3D
#%23
/%2F
+%2B
%%25
空格%20
五、eclipse连接小米2S调试程序的问题
虽然快2年没用过eclipse了,但这个问题还是贴出来,也许正好有正在用eclipse的同学遇到了此问题:
小米Mi2S连接到eclipse上无法识别。即使开启了调试模式,也无法识别.终于找到了一个可用的方法。
方法
用数据线连接手机和电脑。
打开手机拨号界面。
在拨号界面按 # #717717# # 自动就开启了。
在通知栏会出现一个 Diag USB port enable。
当然,应该是需要ROOT权限的。
这时候你的PC机会弹出安装设备驱动。
如果不成功,多插拔几次试试。
ok!安装完就搞定了!这时候打开eclipse就会在Driver里面看到你的手机了。
注意事项
在PC机上安装新硬件向导时候可能会遭遇到缺少dll文件,比如我就遇到缺少了WinUSBCoInstaller2.dll,这个问题。这时候就要去网上找找喽。这个东西分x64 和 x86的,注意不要搞错了!
如果先打开eclipse,再安装的话,可能导致eclipse挂掉,不明原因,可能是我机器配置不行。两次均有这种状况。所以建议先安装后再开eclipse。
上述两种屏幕都可以统称为刘海屏,不过对于右侧较小的刘海,业界一般称为水滴屏或美人尖。
目前国内流行的手机厂商主要有:vivo、oppo、华为、小米。各厂商对刘海屏的适配都大不相同,各自有各自对刘海屏的适配API,具体的适配方法可以阅读相应的官网:
VIVO:
OPPO:
小米:
华为: ?
具体的适配方法这里不作一一介绍,按照以上四大厂商官网所给出的适配方法,这里给出四大厂商判断/获取刘海屏的工具类:
}
根据四大厂商官网所提供的适配方案,其中需要在AndroidManifest中添加标签(具体说明请浏览官网):
在对于Android P的适配中Google给出了统一的方案(基于Android API 28):
meta-data android:name="android.vendor.full_screen" android:value="true"/
在Build.VERSION.SDK_INT = 28中提供了以下接口:
DisplayCutout类接口:主要用于获取凹口位置和安全区域的位置等。
方法
接口 说明: 返回Rects的列表,每个Rects都是显示屏上非功能区域的边界矩形。
返回安全区域距离屏幕左边的距离,单位是px。
返回安全区域距离屏幕右边的距离,单位是px。
返回安全区域距离屏幕顶部的距离,单位是px。
返回安全区域距离屏幕底部的距离,单位是px。
模式:
模式说明:只有当DisplayCutout完全包含在系统栏中时,才允许窗口延伸到DisplayCutout区域。 否则,窗口布局不与DisplayCutout区域重叠
该窗口决不允许与DisplayCutout区域重叠。
Android 5.0原生系统的bug可就多了,其中有以下比较严重的:
相机\切换到前摄像头进行连拍出现报停现象;
相机\切换到某个取景模式拍照后按Home键回主屏幕\重启手机进入相机出现黑屏现象;
联系人\我的个人资料\编辑好个人资料返回保存\重新进入个人资料编辑界面,点开选项菜单,里面的铃声设置、拦截来电无作用;
拨号设置里面的来电振动与系统设置里面的不同步;
设置\提示音和通知(情景模式)\标准模式里面来电铃声设为非默认铃声\切换到户外模式后重启手机\用其它号码拨打测试机里面的号码,来电铃声变为默认铃声;
以上为MTK Android 5.0的bug,仅供参考!
细数Android系统九大缺陷 各种BUG频出
Android系统手机泄密 信息时代很严重
先从所有版本Android系统的通病数起。最让用户不耻的在于,近期美国《华尔街日报》聘用两位安全分析师发现,谷歌安卓系统手机和苹果iPhone手机会自动收集用户的行踪信息,并将这些私人信息返回给两家公司。调查发现,使用安卓系统的HTC手机能每隔几秒钟自动手机用户的姓名、位置、所在地附近的无线网络信号强度及一个特殊电话识别码,并每小时多次将这些信息发送给谷歌。
上述的问题说明了什么?非常明显,你的隐私在使用Android系统手机的时候已经彻彻底底地暴露给了谷歌公司,隐私权得到了无情的践踏!
可能很多人都有疑问,谷歌收集这些信息貌似对我没有什么大的伤害啊?没错,直观来看,谷歌通过Android系统收集你的信息,你不会因此割肉掉皮。但是试想,在信息技术掌控一切的时代,如果你的信用卡信息丢失了你害不害怕?再联想一下前几天刚刚被美军海豹突击队猎杀的恐怖大亨本.拉登,不也是由于信息被美军锁定而惨遭毒手的吗?难道这些还不足以让你引起警示的吗?
不支持关机闹铃 与用户需求严重背离
然后是所有玩家几乎已经习以为常的事情,谷歌系统的一千遍一万遍升级都与它无关,它就是不支持关机闹铃。可以说现在很多的Android系统手机玩家,都是从塞班系统“叛变”过来的,包括小编本人。其中又有多少人曾经喜欢晚上睡觉关机的玩家,因为Android系统的这一缺点而大声骂过街。
没错,很多人在面对Android系统华丽的界面、各种丰富的应用以及炫酷的功能面前妥协了。但是,Android系统不支持关机闹铃的缺点还是无法回避的。
有会有人说了,iPhone4和微软系统也都不支持关机闹铃呀。没错,但是塞班系统的手机支持,MTK芯片的手机支持、展讯芯片的手机,请问你还有什么理由不支持!如果这条理由还不足以让你清醒,那么,我再告诉你同样基于Android系统开发的联想乐Phone就支持!联想可以搞定的事情,你谷歌为什么搞不定!是实力不济还是压根就没有真正考虑过用户需求?
拨号后自动挂断电话 通话BUG频繁出现
手机的基本功能就是通讯工具,无论科技发展到多么随心所欲的境界,这一点都是毋庸置疑的。但是Android系统却在最基本的通话功能上出了问题。很多论坛里的网友都反应的一件事情就是,Android系统手机在拨号通话时经常遇见这样的郁闷情况。拨号以后,电话尚未接通会被系统自动挂断。而且,这绝不是某款Android手机的问题,而是很多Android系统手机的通病。
论坛中一位网友反映,在中兴X876、索爱LT15i、摩托罗拉ATRIX、LG Optimus等机型上都发现了类似问题。
小编在试用Android系统手机期间也发现了很多机型都出现过相同问题,而且身边的很多同事也有同样的反映。至于很多人认为这种情况可能是由于手机在通话过程中,光线感应器或者距离感应器被遮挡而造成的。小编可以给出确定的否定回答,手机在不接触头部,光线感应器、距离感应器不被遮挡的情况下同样会出现此问题。看来谷歌系统的离完美这个词汇有着非常遥远的距离。
对硬件配置要求高 制造成本增加
近期各种高频处理器,各种高RAM内存的手机频现,为玩家奉献了一场几乎华丽的视觉大餐。可以说谷歌Android系统在其中做了推波助澜的效果,原因很简单,Android系统的手机对硬件配置要求过高,厂商如果不推出高硬件标准的手机怎么在这个竞争激烈的时代立足呢?不过,我们可以换个角度考虑一下,这些高配置的手机价钱怎么样?如果你不是富二代,你爹不是李刚的话,你肯定不会淡定的。
尽管谷歌方面一再声称,Android系统对手机硬件没有明确的配置要求,对厂商使用什么样规格的硬件配置只是提出建议。但是,如果厂商不接受建议,采用的低配置的硬件,将会是什么后果?显然易见,这款手机一定会在竞争中被无情淘汰。
我要举例说明一下,Android系统手机的CPU主频已经达到1.2GHz主频,甚至双核1.2GHz主频的手机也开始出现了。但是塞班系统至今没有出现过一款CPU主频能够达到1GHz主频的手机。难道塞班手机真的比Android系统手机落后那么多?目前塞班系统很多的手机处理器都只有600MHz,系统RAM内存128MB,但是运行速度还是非常流畅的。但是如果是一款Android系统手机,配备了600MHz、128MB RAM的硬件,运行速度有多慢,我想用过的人都是十分清楚两者之间的差距的。就象这位网友在论坛里说的那样,Android系统手机的高配置、高硬件带来的高成本最后都是转嫁给消费者的。
系统偷跑流量 流量流失情况惊人
按照谷歌方面的描述,Android系统最大的优势在于与互联网贴合紧密,使用Android系统手机可以尽享移动互联网带来的欢乐。但是,有没有想过这种谷歌引以为豪的优势有一天会变成消费者眼中的大敌。查看一下网上的记录,有多少人抱怨Android系统手机费流量,原来塞班时候30M玩一个月的时代已经一去不复返了。
小编原来一个月的流量为70兆,上月因为超出包月套餐而多花了60多块钱。因此这个月果断将包月流量定为了150兆。而我身边的同事的包月流量普遍在150兆,最高的甚至包了300兆的流量。
Android系统为什么这么费流量,原因很简单。Android过分强调移动互联网的及时性,因此很多应用程序与互联网都是同步的。比如打开新浪微博,你微博中所有好友每天及时更新的信息都会产生流量。即使你关闭(不使用任务管理器关闭的情况),程序也会在后台自动更新。人人网上每日大量的好友分享、安卓市场内不断更新的软件信息......这些流量通通算在你头上。当然肯定有玩家会说,这些都是软件产生的流量呀。没错,那么小编请问,在最开始提到的Android系统手机收集用户信息,并将这些数据传回谷歌公司产生的流量费,谷歌为你买过单吗?
系统费电严重 安卓手机续航不足
应用程序实时更新产生不仅仅是白白跑掉的网络流量,还在于这些更新活动也导致手机电量白白浪费掉。在各种手机论坛中,我们见到最多的帖子就是抱怨某款手机的续航能力不足。如果是一款两款手机如此,说明是手机本身的电源管理系统有缺陷,如果是绝大多数的安卓手机都这样,我们只能把矛头指向谷歌Android系统本身。
也许会有网友站出来,告诉我们如何如何优化可以改善手机的待机情况,但是所有的补救措施只是善后工作,然后无法从根本上解决Android系统手机续航能力弱的现状。
其实,很多熟悉Android手机的朋友可能都会有一个共识,就是某款程序明明我已经退出了,但是在检查任务管理器的时候依然能够发现这款软件依然占系统内存,说明程序本身还在运行。一款程序、两款程序还好,如果一天反复打开十几款,甚至更多,后台运行这些程序所浪费的电量能不惊人嘛。在这点上,至少塞班系统就能“说到做到”,退出的软件绝对不会继续后台操作,也不会偷跑用户流量,浪费用户电量。MTK和展讯芯片手机不会,为啥偏偏Android系统手机这么伤用户?
死机现象频现 Android系统普遍存在
Android系统还有一个频现的Bug在于手机死机现象比较频繁。而死机发生的环境也是多种多样,有的是在运行某款程序时突然死机,有的是上网期间突然死机,有的甚至是在待机状态下也会发生死机现象。尽管用户反应,死机现象发生的频率不尽相同,但是几乎所有的Android手机用户都遇到过死机现象。
尽管造成手机死机的原因有很多种,包括系统因素,也包括硬件损伤,温度过高等硬件因素以及软件不稳定或者与系统冲突等软件因素。但是由于Android系统过于开放,至少在死机现象频繁发生的问题上扮演了重要角色。
由于Android系统开放程度高,因此造成大量的手机厂商和软件开放商涌入以图得一杯美羹。而由于Google market的测试、审核机制又不是很完善,导致了很多并不很稳定甚至会导致系统崩溃的软件被发布出来。此外,由于系统过于开放,很多网友玩家自行制作了很多各种版本的ROM,各种ROM稳定性,水平参差不齐也是手机死机的诱因之一。此外,对于很多新入手智能手机的玩家来说,各种ROM也导致Android系统版本眼花缭乱,使得他们显然无法驾驭得了。
系统“智商不高” 计算器不会计算
近日,在各大手机论坛和Android社区都会发现一个令人匪夷所思的帖子,不少网友都纷纷表示Android系统自带的计算器爆出低级错误,Android手机内置的计算器有些最简单的减法都会算错。例如在Android系统自带的计算器内输入14.52-14.49,正确结果应该是0.03,但是计算器结果显示的数字为0.0299999。
不光用14.52-14.49会得出0.0299999的诡异结果。甚至各种.52减去.49都是这个诡异的0.0299999。
作为一款智能手机操作系统,连二年级小朋友都会的简单加减法都会计算失误,确实让人优点啼笑皆非。不过好在安装第三方计算软件以后,Android系统不会再出现这种低级错误。所以,倘若你手机计算器比较多的话,建议玩家还是自行下载一款第三方的计算软件,如《科学计算器 RealCalc Scientific Calculator》等。
短信功能也bug 随机乱发惹人烦
Android系统手机的短信Bug最先由国外媒体曝光,这种小bug会导致短信在用户毫不知情的情况下随机发送,导致实际接收到短信的人并非发信人选择发送的对象。这种bug着实让中招的玩家崩溃的,手机的基本通讯功能都出现问题了,其他方面最强大也只能算做鸡肋产品。
谷歌方面发表了官方声明,否认这一令人近乎狂躁的bug大范围存在,而且对程序的影响也并非全方面的,只涉及短信发送功能上。
但是谷歌方面的声明显然不能让玩家信服,随后,在国内论坛网站了也出现了网友曝光Android系统手机短信bug的消息。玩家的描述与国外媒体曝光的内容几乎一致,都是信息发送时被短信被随机发给了其他用户。不仅如此,部分Android手机还爆出已经被阅读过的短消息依然会被随机标记为未读的情况,让很多玩家十分崩溃。 小结:
以上就是小编整理的Android手机操作系统的bug合集。文中所列出的所有bug并不是某款机型存在,而是适用所有Android系统手机,也许部分bug发生的概率较低,但真实性绝对可证。罗列这些bug也不是为了攻击和贬低Android系统,只是在Android普遍被大众所接受的情况下,有必要让用户了解Android系统本身还存在哪些不足,让玩家了解自己一旦购买Android系统手机有可能会面临怎样的风险。
如果您的手机在使用过程中出现卡死现象,请您按照以下方法排查:
1.强制重启设备
建议您强制重启设备。如果不能重启或重启后仍然出现卡死,可能是硬件故障。请您备份数据(QQ、微信等第三方应用需单独备份)后携带购机凭证前往华为客户服务中心进行检测处理。
2.清理设备空间
(1)清理后台应用,多个应用程序在后台运行会占用过多内存或其他资源,设备超出负荷可能会出现异常。建议您尽量避免多个应用程序同时运行。
(2)清理存储空间,可能是存储空间不足导致低性能。建议您使用手机管家清理设备存储空间,并卸载不常用的应用。
3.检查是否运行不兼容的应用程序
(1)某些第三方应用与系统不兼容可能导致设备死机、系统卡死的现象,建议您进入应用市场下载最新版本应用。
(2)如果系统不停报错、无法正常开机,您可以进入安全模式,然后进入设置,搜索进入应用管理,卸载此前安装的软件。
4.检查是否安装了 microSD卡
请您重新插拔 microSD 卡后检查问题是否仍然存在。如果问题不存在则可能是接触不良,如果问题仍然存在了,则可能是 microSD 本身损坏或与系统不兼容。建议更换优质 microSD 卡。
5.可能系统文件有损坏
系统在运行时,无法找到对应的文件,从而发生错乱,导致设备出现故障。请使用华为手机助手进行系统修复:
(1)前往华为手机助手官网,下载安装最新Windows版本的华为手机助手。
(2)打开华为手机助手,在页面右下角点击系统修复。
(3)在手机关机状态下,通过USB数据线连接电脑,然后同时按住手机音量下键和电源键。
(4)手机进入FastBoot模式后,华为手机助手会提示“成功进入系统修复模式”,点击开始修复。
(5)修复安装包下载完成后会自动安装,期间请勿断开USB连接,整个过程需要一些时间,请耐心等待。系统修复完成后,手机会自动进入系统更新模式,系统更新完成后手机会自动重启。
温馨提醒:系统修复期间,请勿断开USB连接。
若不能进入FastBoot模式或系统修复失败,请提前备份好重要数据(QQ、微信等第三方应用需单独备份),携带购机凭证前往华为客户服务中心检测。
6.如果问题仍然存在,请您携带购机凭证前往华为客户服务中心进行检测处理。同时建议您检查手机是否安装非官方系统,非官方系统会影响设备的稳定性,导致设备出现异常。
温馨提醒:如果您之前没有备份数据,恢复、升级手机系统版本和检测可能有数据丢失的风险。
相关链接如下:预约服务华为客户服务中心维修备件价格查询寄修服务