- 博客(49)
- 资源 (2)
- 收藏
- 关注
原创 【面包屑】快速使用RecyclerView搭建列表
以下示例为搭建一个表格形式的列表。里面的 item 可以设置占用不同的列数。Adapter示例:public class SampleRecyclerViewAdapter extends RecyclerView.Adapter { public enum ItemType{ TYPE_A, TYPE_B, } private List<Sam
2017-03-20 21:08:16
650
原创 【随笔】msgpack-java 理解
msgpack-java 经历了两个大的版本,一个是0.6.* 一个是 [0.7.,0.8.]。0.7.* 基本把0.6版本重构了一遍。具体的差异点如下:MesspagePack type system 到 formats 层 ,0.6.版本与[0.7.,0.8.*]版本序列化和反序列化不兼容0.6版本formats规则和0.7的版本formats规则不一样。意味着发送端和接收端的版本不能一个是0
2017-02-20 23:43:22
2658
原创 Git workflow 选型分析
没有万能的 workflow,只有最适合的 workflow。而这篇文章,就是来讨论一下如何挑选、使用、优化项目的 git workflow
2016-08-31 14:55:33
1210
原创 我自己理解的MVC,MVP,MVVM
写下这篇文章,以后有人问我MVC的问题,我就发给他。语言短暂,文字长存 老生常谈的发一个这种基础概念文章,应该没什么人关注吧? 对了,这篇文章长期更新。MVC模型MVC解决的软件模型中只解决两类显性的任务:修改数据。 比如改动数据库中的数据,比如改变一个状态机中的状态(典型的未登录、登录中、已登录)展现内容给用户。MVC根据这两类任务,区分了 View 和 Model
2016-07-14 11:09:59
535
原创 UC 浏览器调用支付宝本地支付
近期观察到:在 UC 浏览器中打开网页进行支付宝支付时,会自动调起支付宝 APP 进行支付。 针对这个现象今天分析了一下 UC 浏览器的实现方案。 发现在UC 上进行支付(也就是访问支付宝 WEB API 地址的链接)的时候,UC 浏览器的私有数据目录下会出现一个 alipay 文件夹(路径/data/data/com.UCMobile/alipay)。其中的./version0
2016-03-07 19:12:35
5777
原创 android 主流浏览器对 scheme 打开本地 APP 功能的兼容性
以下测试用奇酷手机青春版测试,系统信息: 360系统 android5.1(UI版本号 V1.0稳定版) 浏览器 是否兼容 应用版本号 搜狗浏览器 兼容 v4.2.1 chrome 兼容 v48.0.2564.95 4G 浏览器 兼容 v3.8.7 360浏览器 兼容 v2.0.4 2345浏览器 兼容 v7.6.2 欧朋浏览
2016-02-17 11:35:50
4386
1
原创 Android App 发布版本带日志的问题
我们在进行Android App 开发的时候经常会使用 Log 这个类来进行 logcat 日志输出。但是这样的输出日志,如果带入发布包内对外发布出去了,会导致程序运行信息暴露给第三方。
2015-09-08 14:24:38
747
原创 GrideView简单使用
GrideView使用的时候,可能遇到3个问题:1、如何控制GrideView各个ITEM的间距:可以对GrideView设置以下属性来控制横向纵向间距(这个间距不会使最外面一圈的item对外有间距,只有两两之间的间距)android:horizontalSpacing="@dimen/some_dimen"android:verticalSpacing="@dimen/somedi
2015-02-06 15:42:11
1588
原创 Android KitKat 4.4 使用Chrome DevTools 进行WebView远程调试 | remote debug web APP in chrome
google 出的 Chrome Dev Tool 支持了对 Android WebView 的远程调试,详细信息见下方链接:
2014-09-16 21:57:25
3710
2
原创 把文本拷贝到剪切板——android
ClipboardManager clipboard = (ClipboardManager) mContext.getSystemService(Context.CLIPBOARD_SERVICE); ClipData clip = ClipData.newPlainText("mmsContent",mSmsContentConst);
2014-05-29 13:45:01
930
原创 JS获取textArea中光标位置的方法
function getCursorPos(pTextArea) { var cursurPosition=-1; if(pTextArea.selectionStart){//非IE浏览器 cursurPosition= pTextArea.selectionStart; }else{//IE
2014-05-06 07:53:25
3611
原创 java 日期显示
先上一个最简单的将当前系统时间转化成可读的日期格式字串的代码:Date date = new Date(System.currentTimeMillis());SimpleDateFormat fmt = new SimpleDateFormat("MM-dd HH:mm:ss.SSS");String startDateString = fmt.format(date);
2014-02-17 15:26:11
705
转载 【转】 Mac环境下Android APK包反编译详解
一、为什么需要对APK包进行反编译公司原有的一个产品包括Android以及iOS两个版本,Android的源码不小心遗失了。但是当前这个产品又需要针对某个潜在客户做一些定制化,重建Android项目看来是必由之路了--总不能再开发一遍吧 :)。还好当时发布APK包的时候没有对代码做混淆,有救了!二、开发环境以下是我当前使用的开发环境:操作系统:Mac O
2014-02-03 21:33:35
921
原创 使用监听Logcat来监听系统home事件
一般我们监听home键有监听广播的方式,监听按键的方式。监听广播的方式存在有的手机会把广播改掉(魅族M90)。而监听按键的方式在高版本系统上不行。这里补充一个监听系统logcat内容来判断Home事件的方法,代码比较短,复制粘贴即可用。private Thread createCatchHomeThread() { return new Thread(new
2014-01-25 16:45:24
2052
原创 使用SpannableString设置TextView文字样式
暂时简单以一个示例代码举例: SpannableString ss = new SpannableString(typeInfo); ss.setSpan(new ForegroundColorSpan(0xfffaa701), 0, typeInfo.length(), Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
2014-01-24 15:47:16
986
原创 VirtualBox 修改虚拟机分辨率
1、首先,需要在确认在虚拟机中安装了Guest Additions。2、要确保在VirtualBox中的显示设置项中的虚拟机最大分辨率包括你想要调整到的分辨率内。3、调整分辨率,这里有两种方式,方案一:在虚拟机中的设置项View-》auto-resize Guest Dispaly勾选,然后拖动虚拟机的窗口。如下图:方案二:或者在命令行中输入以下命令:(该方案适用于
2013-12-17 18:02:08
18166
原创 Android 方法调用堆栈信息显示
使用该方法可以输出调用这个方法的整个递归堆栈信息。public void printCallStatck() { RuntimeException here = new RuntimeException("here"); here.fillInStackTrace(); Log.w(TAG, "Called: " + mContext, here);}
2013-12-05 13:09:25
2427
原创 如何扩大一个view的touch和click响应区域
今天有这么一个需求,需要让界面上的一个图标的响应区域变大,比如图标是50*50的,响应区域要变成100*100。一开始最简单的思路是直接将ImageView的大小设置为响应区域的大小,并且让src居中显示在响应区域中心。可是由于图标的大小和相应区域的大小要根据不同分辨率来适配。这样的话不同分辨率手机上,图标大小肯定像素值一样了。这样肯定不行。所以为了让图标的大小和响应区域都可以自由定制,所以以下的...
2013-12-02 21:39:55
1869
原创 Android布局编写示例【慢慢更新】
1、在LinearLayout中的子布局设置为底部对齐:一般人只知道在子布局节点中要写android:layout_gravity="bottom"但很重要的一点是需要在LinearLayout中设置android:baselineAligned="false",因为通常该属性默认都是true的,所以会出现设置了子布局的layout_gravity不生效的问题。
2013-11-26 11:18:59
778
原创 Android Activty使用示例【慢慢更新】
用广播监听器/service等非Activity的Context打开Activity,要增加Flag:intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);不然会报RuntimeException.从广播监听器打开Activity,不会跟已有的activity处于同一TASK导致带出原有的activity,要增加Flagintent.addFla
2013-11-13 11:21:37
1165
原创 Mac OS 使用iconv 将gb18030编码文本转换为utf-8格式文本
Mac OS X comes with iconv utility that can convert text between encodings. Run the following command in Terminal to convert a gb2312 chinese text file to utf-8:iconv -f cp936 -t ut
2013-11-13 09:32:09
12557
原创 Android Studio 使用Gradle编译 如何导入so包
在你的工程目录中的build.gradle脚本中增加以下代码:task nativeLibsToJar(type: Zip, description: 'create a jar archive of the native libs') { destinationDir file("$buildDir/native-libs") baseName 'native-libs'
2013-11-05 11:35:31
11335
5
原创 android studio调整默认的debug.keystore位置。
在工程文件夹的build.gradle文件中的增加以下内容:android { signingConfigs { debug { storeFile file("your.keystore") } }}参考自:http://stackoverflow.com/questions/17189076/what-is-th
2013-10-31 17:04:44
16093
1
原创 打开系统联系人应用
/** * 打开系统联系人应用 * @param context 上下文 */ public static void startContactsApp(Context context) { try { Intent intent = new Intent(); intent.setAction(I
2013-10-28 10:12:18
718
转载 homebrew安装指定版本的软件
转载自:brew install specific version of formulaLets say we want to install (or downgrade to) node 0.6.19 instead of the newest version.If you already have node, uninstall current vers
2013-10-25 11:09:31
7797
转载 Mac OS X下Android系统M2、华为部分手机无法连接问题之解决方案
【点击查看原博文】一般的android连接mac 很方便不用安装驱动就可以啦,可是不知道为什么特殊情况下有的android手机(小米2,华为等)就是连接不上,下来就说说特殊情况下如何连接。使用USB连接安卓手机后可以做2件事情:1.关于本机-->更多信息->概系统览->系统报告->usb->你所连接的device-->供应商ID(Vendor ID)2.
2013-09-27 13:23:50
1199
原创 Dialog 透明度调整
WindowManager.LayoutParams lp = dialog.getWindow() .getAttributes(); lp.dimAmount = 0.7f;//设置对话框外部区域透明度 lp.alpha = 0.7f;//设置对话框本体背景透明度 dialog.getWindow().setAttributes(lp);
2013-08-29 17:04:50
673
转载 android 常用的数据库表以及操作说明
android 常用的数据库表以及操作说明原文链接:http://blog.dreamtobe.cn/1117.html1:通话记录表表名:calls表的主要字段说明:字段名字段类型备注_idINTEGER记录标识numberTEXT电话号码dat
2013-08-21 13:52:57
795
原创 正确配置Eclipse的java代码的字符格式
一般来说我们都偏向于把java代码默认为UTF-8格式,但是今天遇到这样的情况。当你手头一份代码的注释已经是GBK格式写的了,你怎么在eclipse中设置才能在eclipse中即保持原来的utf-8的代码的可读性也这次导入的GBK的代码的格式可读性。解决方法就是只根据工程来设置字符编码。方法:1、确定eclipse的默认编码格式为GBK(不然工程没有设置为GBK编码的选项)
2013-07-18 16:33:38
1226
原创 《Pro Android C++ with the NDK》 第三章阅读笔记
Chapter 3:引用型数据类型的操作:jstring:新建:(C code-Unicode)jstring javaString = (*env)->NewString(env, "hello world");(创建时可能返回NULL并报异常)(C code-UTF8)jstring javaString = (*env)->NewStringU
2013-07-12 15:53:17
870
转载 Android开发者指南(9) —— ProGuard
Android开发者指南(9) —— ProGuard前言 本章内容为开发者指南(Dev Guide)/Developing/Tools/ProGuard,本章内容为"混淆器",版本为Android3.0 r1,翻译来自:"Jim",欢迎与他交流:"litaojun@gmail.com",再次感谢"Jim" !期待你一起参与翻译Android的相关资料,联系我over14
2013-06-30 11:20:42
699
原创 拦截音量键调节音量
今天在MOTO XT760这台手机上,发现在弹出Popupwindow时,按音量键不能调节音量,但是排查后系统是有产生按键事件的。不知道是因为该机器ROM的原因,还是我的Popupwindow什么属性没有配置导致该问题。因为时间关系,在应用中手动拦截了按键事件,主动调节音量来适配了这个问题。由于应用中需要调节媒体音量,所以下面是写死的调节媒体音量。参考拦截音量键监听代码:
2013-06-21 16:14:00
1718
原创 Andorid Dialog 示例【慢慢更新】
显示一个自定义内容的对话框:new AlertDialog.Builder(this) .setTitle("提示") .setView( LayoutInflater.from(getApplicationContext()) .inflate(R.layout.login_dialog_view, null)) .setCancelabl
2013-06-12 14:55:51
1340
原创 Android工程导入外部代码的3种方法
IDE默认为Eclipse1、简单暴力,直接拷贝src文件夹到工程目录下。将代码完整复制过来后爱怎么折腾就怎么折腾,优点是非常自由,缺点是一些调整不好同步到外部代码的原工程中进行过迭代。2、安全易管理,将外部代码打包成jar包,然后放在工程的libs文件夹下。能有效防止对外部代码的误修改,保证代码安全性。缺点是调试的时候不够灵活。(具体如何将代码打成jar包在此
2013-04-06 22:33:45
1416
原创 将Ant脚本中的Target单独写在其它xml中
我们已经知道Ant脚本提供的的支持把prorperty信息写在单独的文本文件内,而import支持将其他的合法的ant脚本引入自己的xml文件中。这里介绍一个更为直观方便的方式来帮你你进行任务的调整和配置。 用本文介绍的方法,相当于从一个目标xml文件中直接把所有内容粘贴到你自己的用于ant的xml中指定的位置。而ant无需验证这个目标xml文件是否符合ant脚本的规则。
2013-04-02 17:27:11
1149
转载 3DES、AES、RC6、TEA、RSA、MD5、SHA1、SHA256大聚齐
酷贴!3DES、AES、RC6、TEA、RSA、MD5、SHA1、SHA256大聚齐前两天想帮朋友做一个ARM/STM32的ISP脱机下载器,想到固件平时是保存在外部SPI ROM里的需要加密。这两天在网上研究了一下流行的文件加密方法并调试和整理了一下,特此公布。先简单的扫扫盲,大家可以边看边下载呵。DES---研究过加密的朋友十分熟悉,老牌的加密方法了。这是一个可逆的对称加密算法
2013-04-02 14:29:19
2439
转载 使用jarsigner进行签名
假设您有一个 JAR 文件名为“bundle.jar”并且希望使用“working”目录中名为“mystore”的密钥仓库里别名为“Jane”的用户的私钥进行签名。假设密钥仓库口令是“myspass”且 jane 的私钥口令是“j638klm”。您可以使用下列命令为该 JAR 文件签名并将签了名的 JAR 文件命名为“sbundle.jar”: jarsigner -keystore /
2013-04-02 10:22:06
1703
AsyncTask的简单应用
2012-10-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人