2014-09-26 码农明明桑
git
最开始实习的时候是使用svn,之后正式工作就一直在使用git,这样算起来,使用git也有两年的时间了。以前带我的同事,让我在拉代码的时候要我使用git pull --rebase,一直很纳闷为什么要那样做,后来遇到拉代码的时候有许多冲突要解决,然后去查找资料,才了解到其中的一些事情。今天分享一下,顺便自己也梳理一下。 git pull git pull 是 git fetch + git merge FETCH_HEAD 的缩写。所以,默认情况下,git pull就是先fetch,然后执行merge 操作,如果加--rebase 参数,就是使用git rebase 代替git merge。 more merge 和 rebas 继续阅读 »
2014-09-19 码农明明桑
在开发中经常会有一些需求,比如显示头像,显示一些特殊的需求,将图片显示成圆角或者圆形或者其他的一些形状。但是往往我们手上的图片或者从服务器获取到的图片都是方形的。这时候就需要我们自己进行处理,将图片处理成所需要的形状。正如茴香豆的的“茴”写法大于一种,经过我的研究,画出特殊图片的方法也不是一种,我发现了三种,且听我一一道来。 more 使用Xfermode 两图相交方式 通过查找资料发现android中可以设置画笔的Xfermode即相交模式,从而设置两张图相交之后的显示方式,具体模式见下图,源码可以去android apidemo。(SRC 为我们要画到目标图上的图即原图,DST为目标图) 由上图可以看到,如果我们需要画 继续阅读 »
2014-09-16 码农明明桑
在Android系统中打开Activity,Service, BroadCast 都需要使用到Intent(意图),那么作为一个开发者就需要知道怎么使用Intent,知道怎么通过Intent的匹配规则打开其他的组件,或者给其他组件提供访问接口。因此在这里总结一下Intent和Intent的匹配规则。 Intent使用示例 显式使用Intent java Intent intent = new Intent(context, XXXActivity.class); intent.putExtra(Intent.EXTRA_TEXT, "string text"); 隐式使用 java Intent intent = new 继续阅读 »
2014-08-26 码农明明桑
adb在开发中真的是时时都会用到,熟练使用可以帮助我们提高开发效率。前段时间看到一个外国程序员分享了一篇文章,觉得写的很好,介绍了一些很有意思的adb的命令,我就寻思着有空也写一篇,对于自己是一个总结,同时方便自己或者其他人以后查阅。 想要能够在命令行里面敲adb能够使用,先要保证你的adb所在的目录,一般是sdk/platform-tools目录,要在环境变量中,想要怎么配环境变量,自己google去。 首先要学会使用帮助,遇到不会用的命令可以直接敲adb 或者adb --help看帮助,帮助文档基本的命令都有。 more adb devices 查看adb已经连接上的手机列表 adb install -r /path/t 继续阅读 »
2014-08-01 码农明明桑
推送服务现在广泛的使用,几乎成了每个app的必备,现在呢,苹果上面有APNs,android上面游GCM(中国不可用)。我也是经常使用第三方的推送,比如百度云推送,个推等等。但是一直想知道推送的原理,想着自己也能做出来,到网上搜到一些推送的方案(大段内容来自网上)。 方案一:使用GCM服务(Google Cloud Messaging) 简介:Google在Android上标配了自己的推送GCM(Google Cloud Messageing),可以帮助开发人员给他们的Android应用程序发送数据。它是一个轻量级的消息,告诉Android应用程序有新的数据要获取从服务器,或者它可能是一个消息,其中包含了4KB的payload 继续阅读 »
2014-06-30 码农明明桑
在Android开发中,我们使用android.util.Log来打印日志,方便我们的开发调试。但是对于正式发布的程序,我们并不希望这些Log信息显示,一方面对于用户来说影响机器性能,另一方面,其他开发者看到这些信息的时候,对我们应用程序的安全是有威胁的。所以,我们需要在正式发布时不让Log执行,或者将其移除。这里,我提供三种方法。 自己写一个Log的帮助类,在类中设置显示级别 示例代码如下,通过一个静态变量设置Log的显示级别。 more ```java public class Log { public static int logLevel = Log.VERBOSE; public static void i 继续阅读 »
2014-06-28 码农明明桑
主要包括:jdk idea android sdk 安装JDK sudo add-apt-repository ppa:webupd8team/java #添加源 sudo apt-get update #更新仓库 sudo apt-get install oracle-java7-installer #安装java7 执行 java -version 检查java版本,确保已经正确安装jdk more 最后执行 sudo apt-get install oracle-java7-set-default 将设置java7到系统的环境变量中(这样就不需 继续阅读 »
2014-06-22 码农明明桑
鄙人程序猿一枚,Android开发,常年使用Ubuntu(主要是买不起Mac,O(∩_∩)O哈哈~)。分享一下自己使用的那些软件,如果你有什么好的软件。欢迎与我交流。 输入法:开始的时候是用的fcitx,后来搜狗出了linux版本,选择之。下载链接 办公软件:WPS Linux,真心很好用,比libreOffice好用不止一点.下载链接 注意:下载alpah版本. more 浏览器:chrome 和 FireFox,不解释,一个浏览器不够用的。这两个,开发调试都够了。关于支付宝的话,可以安装支付宝官方给的一个脚本就可以了。 邮件客户端: ThunderBird Mail 火狐家的,算比较好用的了。 笔记:为知笔记 ,为知 继续阅读 »
2014-06-15 码农明明桑
android应用程序的三大组件——Activities、Services、Broadcast Receiver,通过消息触发,这个消息就是Intent,中文又翻译为"意图"(我感觉读着不顺畅,还是读英文)。我们可以通过Intent去启动三大组件,并且通过Intent携带数据到其他组件中。本文来看一下怎么使用Intent启动组件,以及Intent的过滤规则。 Intent对象 首先来看Intent对象中包含的成员。 more java private String mAction; //动作 private Uri mData; //数据 private String mType; private Strin 继续阅读 »
2014-06-04 码农明明桑
android中网络数据传输是经常被用到的,通常我们使用xml或者json,而json更加轻量,便捷,我们使用的更多。我自己在项目中使用很多,今天就说说android中怎么去解析JSON,帮助自己总结内容,同时帮助别人少走弯路。 JSON语法 首先看JSON的语法和结构,这样我们才知道怎么去解析它。JSON语法时JavaScript对象表示语法的子集。 JSON的值可以是: 数字(整数或者浮点数) 字符串(在双引号内) 逻辑值(true 或 false) 数组(使用方括号[]包围) 对象( 使用花括号{}包围) null JSON中有且只有两种结构:对象和数组。 1、对象:对象在js 继续阅读 »