当前位置:  编程技术>移动开发
本页文章导读:
    ▪背阴调节亮度默认值修改        背光调节亮度默认值修改1、packages/apps/Settings/res/layout/preference_dialog_brightness.xml 进行背光调节dialog进行布局。 2、packages/apps/Settings/src/com/android/settings/BrightnessPreference.java 获取默认值供系统使.........
    ▪ 给Zxing项目简单化后打包,可直接调用条形码扫描        给Zxing项目简化后打包,可直接调用条形码扫描最近研究条形码扫描,搜了很多发现一个Zxing的开源项目,但是用来很不爽。因为使用方法很麻烦,要么是先在用户的机器按照他们的扫描软件.........
    ▪ Google 极客途软件开发团队的不良行为       Google 极客谈软件开发团队的不良行为 开发团队是一个整体,稳定的、沟通无碍的团队文化非常重要。好的文化氛围应该包括基于共识决策的开发模式、高质量的代码、代码审查,以及能让.........

[1]背阴调节亮度默认值修改
    来源: 互联网  发布时间: 2014-02-18
背光调节亮度默认值修改

1、packages/apps/Settings/res/layout/preference_dialog_brightness.xml

进行背光调节dialog进行布局。

2、packages/apps/Settings/src/com/android/settings/BrightnessPreference.java

获取默认值供系统使用

private int getBrightness(int defaultValue) {
        int brightness = defaultValue;
        try {
             brightness = Settings.System.getInt(getContext().getContentResolver(),
                    Settings.System.SCREEN_BRIGHTNESS);
         } catch (SettingNotFoundException snfe) {
         }
        return brightness;
     }

3、frameworks/base/packages/SettingsProvider/res/values/defaults.xml设置默认值

<integer name="def_screen_brightness">179</integer>//默认值

编译模块

mm frameworks/base/packages/SettingsProvider/

adb push system/app/SettingsProvider.apk

恢复出厂设置就可以看到修改的默认值了


    
[2] 给Zxing项目简单化后打包,可直接调用条形码扫描
    来源: 互联网  发布时间: 2014-02-18
给Zxing项目简化后打包,可直接调用条形码扫描
最近研究条形码扫描,搜了很多发现一个Zxing的开源项目,但是用来很不爽。因为使用方法很麻烦,要么是先在用户的机器按照他们的扫描软件,然后用自己的程序去启动他们的Actvity;还有一个就是,在网上找到简化后的Zxing项目源码,放到自己的项目中用于调用。

觉得这两张都不是很爽,于是就研究了下打了个包,就可以直接调用了。

说明:由于打包不能打进资源文件,所以扫描的那个节目我是用代码生成的;还有扫描完成时本来是会有一个提示音,由于要打包我就把提示音删除了。


    下面就来说说使用步骤:

1.导入库文件: 首先你需要Zxing的核心库,这里下载: 点击打开链接        。然后是我打包文件,这里下载:点击打开链接。

2.添加权限与声明Activity: 在你项目的AndroidManifest.xml文件中 添加以下权限:

	<uses-permission android:name="android.permission.CAMERA"/>
	<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
	<uses-feature android:name="android.hardware.camera" />
	<uses-feature android:name="android.hardware.camera.autofocus" />
	<uses-permission android:name="android.permission.VIBRATE"/>
        <uses-permission android:name="android.permission.FLASHLIGHT"/>
必须对扫描界面的Actvity做声明,虽然它不在你的项目里面,但它在我的包中,如果不声明就会在启动它是报错(声明必须是全称):

	<activity android:name="com.google.zxing.simplify.CaptureActivity"></activity>
3.编写调用代码: 

启动Activity的代码:

	Intent intent=new Intent(MainActivity.this,CaptureActivity.class);
	startActivityForResult(intent, 1); //这里的1是用来返回时区分是那个Activity返回的,没有太多的意义
获得返回的结果:

	@Override
	public void onActivityResult(int requestCode, int resultCode, Intent intent) {
		if (requestCode==1) {
			if (resultCode == 1) { //成功
				Bundle bundle = intent.getExtras();
				Toast.makeText(this,"Contents:"+bundle.getString("Result")+"\nFormat:"+bundle.getString("Format"),
						Toast.LENGTH_LONG).show();
			}
			if (resultCode == -1) { //失败
				Toast.makeText(this, "Error", Toast.LENGTH_LONG).show();
			}
		}
	}
这里就完成了,我如果还有朋友不会,下面是我的例子程序。这里下载:点击打开链接


特别提示: 这里我只返回了两个比较常用内容,编号内容和编码格式;其实还有很多其他的返回内容,如果觉得这个不够用,可以使用我下面的项目自行封装打包。

在项目中搜索 Input Result 字段你就能看到在什么地方修改了。

这里是项目源码: 点击打开链接


    
[3] Google 极客途软件开发团队的不良行为
    来源: 互联网  发布时间: 2014-02-18
Google 极客谈软件开发团队的不良行为

开发团队是一个整体,稳定的、沟通无碍的团队文化非常重要。好的文化氛围应该包括基于共识决策的开发模式、高质量的代码、代码审查,以及能让人放心尝试新事物或者快速失败的环境。Brian和Ben是Google的两位开发主管,他们在“极客与团队”中列举了软件开发团队的典型不良行为,提醒开发者时刻保持警惕,并提出了一些实际的解决办法。

Brian和Ben指出,团队的注意力和专注力是最容易受到威胁的。团队规模越大,编写软件和解决有趣问题的能力就越强—不过这种能力毕竟是有极限 的。要是你不去主动保护它们,很容易就会被害群之马引入歧途。团队最终会争论不休,变得心烦意乱、身心疲惫。所有人都会把注意力和专注力放到那些编写优秀 软件以外的事情上去。

根据我们的经验,很少会有人故意干坏事(也就是存心捣乱的那种)。我们管这种行为叫作“钓鱼”,通常无视这种人就可以了。而大多数人在行为出格的时候,要么是没有意识到自己过分了,要么就是根本不在乎别人的感受。无知和冷漠其实比蓄意更严重。

他们列举了一些典型的不良行为。第一条就是不尊重别人的时间 ,总会有一些人搞不清楚项目的状况,他们的危害通常是浪费团队的时间。他们宁可不断地拿那些很容易就能找到答案的问题去骚扰整个团队,也不愿意自己花点时间去读一读最基本的项目文档、任务宗旨、FAQ,或是最近的邮件讨论。 这里有一个现实当中的例子:

我们在Subversion项目里就曾经碰到过这样一个人,他把开发主论坛当成了自己每天报流水账的地方。查理实际上没有 贡献什么代码,但他每隔两三个小时就会发布自己最新的异想天开。这样就无可避免地产生了很多回复,去解释为什么他的想法是不正确的,不可能的,已经在开发 中了,之前已经讨论过了,或者是已经有文档记录了等。更糟糕的是,查理甚至开始回答那些临时用户的问题,而且都答错了。这样,我们的核心成员只好不断地去 更正他的回复。过了好久我们才反应过来,这位和蔼可亲的热心人其实是好心办坏事,大家被他牵扯了太多的精力。

第二条是自负,这里“自负”可能不是最恰当的词,Brian和Ben想要表达的是那种无法接受多数人决议,无法 倾听和尊重其他观点,以及不愿作出妥协的人。这种人常常会重新挑起些早就已经结束(并且保留在邮件存档里)的讨论,仅仅是因为当时她不在场。这种人不肯去 读存档,也压根不想去思考,她只会要求为了自己重启争论。她常常会就项目的前途作出极端的评价,声称除非按照她的思路走,否则失败就在眼前。

过分索求是另外一种不良行为。每当有陌生人跟你要求做什么的时候,一定要提高警惕。这样的人把所有的精力都用来抱怨软件功能不足,却不愿意自己动手作点贡献。有时候等天上掉馅饼的心态会演变成过激行为。在运营Google的项目托管服务时,Brian和Ben就遇到过这样的例子:

当时有一个项目作者要求我们封掉一个用户,因为他的所作所为实在是太讨厌了。这是一个开源的电视游戏模拟器项目,而这个用 户最喜欢的游戏却无法在上面正常运行,于是他在问题跟踪系统里提交了一个口气相当粗鲁的bug报告。开发人员礼貌地解释了那个游戏跑不起来的原因,还告诉 他相当一段时间里可能都没办法修复那个问题,结果那个人接受不了,每天都来骚扰开发人员。他不断地提交同样的bug报告,里面充斥着各种不满,还在其他 bug报告里评论说拒绝修复他的问题的程序员是个“蠢货”。尽管项目人员和Google管理员屡次警告,他的用词却反而越来越不堪。不管我们怎么努力去消除他的这种破坏性行为,他就是冥顽不灵,万般无奈之下,我们只好祭出最后一招—彻底把他封掉了。

除此之外,还有两种行为需要警惕:

  • 幼稚或是莫名其妙的交流——这样的人不会用真名。他们常常会用一些幼稚的昵称,比如 “SuperCamel”、“jubjub89”,或是“SirHacksalot”之类。更糟糕的是,这样的人往往会在不同的地方用不同的昵称—E- mail一个,即时消息里又是另外一个,可能提交代码的时候还有一个。更有甚者,你会看到他们用火星文、黑客语、全部大写,甚至含有大量标点符号的沟通方 式!
  • 偏执妄想——在上面的例子里我们看到,有时候不切实际要求会直接转变成对项目的恶意。我们无数次看到它彻底演 变成偏执。当团队和访客的意见不一时,这种心怀恶意的人就会抛出某种阴谋论。要是太把他当真,去花精力和时间反驳的话就实在是太滑稽了。而且如果你已经建 立起一条开放透明的沟通渠道的话,这种指控只会显得更加可笑,因为所有的谈话内容都是有公开记录的。我们的建议是根本就不用去理会这种指控。当这种人真的 做到这一步的时候,你说什么都是没用的,既然这样干嘛还费这劲呢?还不如把时间用来写代码。

最后一条是完美主义。乍看之下,完美主义者根本就是无害的。尽管时不时地会有一些奇怪的强迫症类型的行为出现,但是总体上这样的人都是谦虚有礼貌的,而且愿意倾听别人的意见,看起来满是良好的本意。那么问题出在哪里呢?答案就是太追求完美会变得瞻前顾后、犹豫不决。现实当中的例子:

帕特里克是一名非常出色的工程师。他做的设计非常出色,代码和测试的质量也很高,人也非常容易相处。但是每当要设计新软件 的时候,他就会无休止地调整、改进自己的设计。他从不满足,好像永远也不会开始写代码一样。尽管他对我们所面临的问题有非常好的见解和洞察力,但是团队里 的其他成员最后都被折腾到不行。这样下去就没法工作了,我们几个考虑了很久要怎么办。一方面,对团队来说帕特里克是巨大的财富;另一方面,他也妨碍了团队 前进的步伐。每次我们打算开始编写代码的时候,他就会很有礼貌地否定我们的方案,指出其中只在理论上成立的潜在问题,而且都是一时半会不会产生什么影响的 问题,不知不觉中他让我们整个陷于瘫痪状态。

Brian和Ben提出了一些实际的解决办法:

  • 写一份明明白白的任务宗旨。这样可以随时保持专注,知道哪些是目标,哪些不是。
  • E-mail讨论要有礼仪。保留归档,要求新人研读,防范那些“嘈杂的少数人”。
  • 所有历史都要有记录。这不单指代码历史,还有设计决策、重要的bug修复,以及过去犯下的错误。
  • 有效地进行协作。利用版本控制,代码改动要尽可能的小,方便进行审查,扩大“公车因子”,避免出现领地感。
  • 修复bug,测试,发布软件要有清晰的政策和流程。
  • 降低新人加入时的壁垒。
  • 依赖基于共识决策,在无法达成共识的时候也要准备好化解矛盾的方法。

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android录音应用实例教程 iis7站长之家
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3