近期遇到了一个问题,感觉须要记录一下。

要打开开发人员面板,之前的代码例如以下:

Intent intent = new Intent(Settings.ACTION_APPLICATION_DEVELOPMENT_SETTINGS);
context.startActivity(intent);

在我的机器上測试通过,可是公布出去后后台反馈会了崩溃错误:

android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.settings.APPLICATION_DEVELOPMENT_SETTINGS }

细致看了看。出错的机型的os版本号都是2.3的。于是找了台2.3的来进行測试。确实存在这种错误,那么说明Settings.APPLICATION_DEVELOPMENT_SETTINGS这个字段在2.3版本号里是不成立的。

在网上查看的api里Settings.APPLICATION_DEVELOPMENT_SETTINGS是起始于API 3,这种话2.3的时候已经存在了。为了搞清楚,在网上下载了2.3版本号Settings的源代码。发现该action为<action android:name="com.android.settings.APPLICATION_DEVELOPMENT_SETTINGS"/>,可是api中却显示为“android.settings.APPLICATION_DEVELOPMENT_SETTINGS”。那么错误就是在这里出现的。至于从哪个版本号開始改变的,查了一会没有查到。因为时间问题,待以后再做具体查询。

只是问题该怎样解决?能够做版本号推断,用不同的字符串action来初始化Intnet。

只是还能够用另外的方法,代码例如以下:

ComponentName componentName = new ComponentName("com.android.settings", "com.android.settings.DevelopmentSettings");
Intent intent = new Intent();
intent.setComponent(componentName);
intent.setAction("android.intent.action.View");
context.startActivity(intent);

这种话就能够不用推断版本号。

这个问题还是由于版本号差异引起的,自己在这方面一直没有系统的学习,每次都是出现故障才去了解一点。

这样事实上在解决这个问题时会比較慢。并且不会提前避免这种错误,看来该找时间好好学习一下这方面了。

以Settings.APPLICATION_DEVELOPMENT_SETTINGS打开开发人员面板出错总结的更多相关文章

  1. Android 当打开“开发人员模式”中的“不保留活动”后,程序应当怎么保持正常执行

    Android 当打开"开发人员模式"中的"不保留活动"后,程序应当怎么保持正常执行咧. .? 在这几天,我一直在纠结这个问题.从发现,程序出现这个问题,是由于 ...

  2. Chrome - 怎样独立窗口打开开发人员工具

    打开开发人员工具, 右上角找到下图红圈的键, 长按左键直到出现绿圈的键, 别松开鼠标, 把指针移到绿圈的键上面, 松开左键, 好了, 一个独立窗口粗线了. 转载请声明出处: http://www.cn ...

  3. EXT.NET高效开发(三)——使用Chrome浏览器的开发人员工具

    这篇帖子老少皆宜,不分男女,不分种族,不分职业.俗话说:“磨刀不误砍柴工”.掌握一些开发工具的使用,对自己帮助是很大的(无论是用于分析问题,还是提高生产力).本篇就讲述如何利用Chrome浏览器(这里 ...

  4. Chrome_浏览器开发人员工具

    Google Chrome 浏览器开发人员工具,让网页开发变得更轻松 无论是 IE 6/7 的 Internet Explorer Developer Toolbar 或者是 IE 8 自带的 Dev ...

  5. 不仅仅是浏览器 走近Chrome开发人员工具

    Chrome浏览器以其简单.快速.安全.稳定.扩展丰富等特性受到了不少人的喜爱,除了这些特性,Chrome浏览器还提供了非常简单方便的开发人员工具,可以为开发提高效率,加上Chrome浏览器对HTML ...

  6. IE11 F12 开发人员工具 查看 Cookie

    参考网址:Using the F12 developer tools in IE11 Step1 : IE11 => F12 打开 开发人员工具 Step2:开发人员工具 => 网络F5 ...

  7. 防止开发人员获取到敏感数据(SQL Server的数据加密简介)

    背景 有时候,我们还真的会碰到这样的需求:防止开发人员获取到敏感数据.也许你觉得很简单,把开发和运营分开不就可以了吗?是的,如果公司有专门的运营团队的话,但对于很多小公司来说,几个人的开发团队就兼顾了 ...

  8. 面向 Java 开发人员的 Ajax: 构建动态的 Java 应用程序

    面向 Java 开发人员的 Ajax: 构建动态的 Java 应用程序 Ajax 为更好的 Web 应用程序铺平了道路 在 Web 应用程序开发中,页面重载循环是最大的一个使用障碍,对于 Java™ ...

  9. SAP成都研究院35岁以上的开发人员都去哪儿了?

    2006年成立的SAP成都研究院,位于天府软件园B区.如今,因为研究院发展的不断壮大, 已经搬迁到天府软件园E区了,因此,发生在图片building各种充满悲欢离合的故事,已经成为一部分小伙伴脑海中难 ...

随机推荐

  1. hdu 3879 方案选择

    每日一水--- #include <cstdio> #include <cstring> #include <vector> #define oo 0x3f3f3f ...

  2. Codeforces Round #358 (Div. 2) B. Alyona and Mex 水题

    B. Alyona and Mex 题目连接: http://www.codeforces.com/contest/682/problem/B Description Someone gave Aly ...

  3. 离线下载Xcode的文档

    https://developer.apple.com/library/downloads/docset-index.dvtdownloadableindex 找到里面的文档下载地址 例如iOS 8. ...

  4. ROS知识(10)----smach_viewer的Graph view不能显示状态图

    1.问题 在运行ROS by Example 2--Indigo版本中,运行 smach_viewer,再运行巡逻,命令如下: $ rosrun smach_viewer smach_viewer.p ...

  5. 几张图理解Roll, Pitch, Yaw的含义

    Roll:翻滚    Pitch:俯仰    Yaw:偏航 有时候不知道它到底绕着哪个轴旋转得到的角,一个比较容易的记法是根据字母的排列顺序PRY分别对应XYZ轴进行旋转得到的角,即: Pitch是绕 ...

  6. 一个.net下的轻量级的Serverless 文档数据库LiteDB

    今天发现了一个.net下的轻量级的Serverless 文档数据库LiteDB,感觉还不错 官方网站: http://www.litedb.org/ 项目主页: https://github.com/ ...

  7. jQuery判断复选框是否被选中的3种方式

    页面部分:     <input type="checkbox" id="cbx" /><label for="cbx"& ...

  8. [翻译] 极具动感的 FRDLivelyButton

    FRDLivelyButton https://github.com/sebastienwindal/FRDLivelyButton FRDLivelyButton is a simple UIBut ...

  9. openssh-server

    安装 apt-get install openssh-server 配置 sudo gedit /etc/ssh/sshd_config PermitRootLogin without-passwor ...

  10. 最值得你所关注的10个C语言开源项目

    . Webbench Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接 ...