Android-OC-微信
小雷FansUnion
懂商业的技术合伙人。个人微信:FansUnion
微信订阅号:XiaoLeiFansUnion。
展开
-
小米开源文件管理器MiCodeFileExplorer-源码研究(3)-使用最多的工具类Util
Util.java,使用最广泛~代码中很多地方,都写了注释说明~基本不需要怎么解释了~package net.micode.fileexplorer.util;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputS原创 2015-10-28 10:20:20 · 2947 阅读 · 0 评论 -
Object-C,四则运算计算器
下面是是一个比较复杂的类。定义一个四则运算计算器Caculator的接口和实现。在main函数中,让用户输入四则运算表达式,比如a+b,a-b。最后,在控制台输出结果。用到的语法:接口、类的定义,实例方法,switch-case语句。//// main.m// switch-case//// Created by fansunion on 15/11/15.// Copyrigh原创 2015-11-15 17:34:33 · 2657 阅读 · 1 评论 -
Object-C,文件路径API
犀利吐槽1.同样都是“文件和目录操作",java中,就用java.util.File一个类,就封装了很多API,而Object-C搞了这么多类和函数。具体原因,有待分析啊。2.明明是NSString,字符串操作,怎么出现了”pathComponents“等操作文件路径相关的方法,很奇怪的赶脚。3.stringByAppendingString,这函数的名字有点长啊。4.总体感觉,Object-C的原创 2015-11-29 14:00:37 · 1637 阅读 · 2 评论 -
Object-C学习比较费劲的3点原因
作为一名有8年编程经验的资历不浅的程序员,学习Object-C和iOS,感觉效率有点低,至少和学习Android比起来,慢的不是一点点。 主要有以下3个原因:1.Object-C,和C系列的语言(C、Java、C++、C#)语法差别有点打,最大的区别是“函数调用的方式”。 感觉很脑残啊~[object method]; 写代码,非常不连贯。没有object.method()爽啊~2.Ma原创 2015-12-02 21:26:42 · 3324 阅读 · 2 评论 -
Object-C,NSSet,不可变集合
又到晚上了,继续码代码。 正在此时,老爸一个电话”海阔凭鱼跃,天高任鸟飞“,老爸不在为老问题烦我了。 自由了,突然感觉压力好大啊。 将来混的太惨,可咋办啊~ 第1个例子是,不可变集合。 Set集合,概念是通用的,无非是和Java中的java.util.Set语法不一致,方法的个数不一致罢了。 集合的核心特征,就是元素不会重复,是否重复根据元素的hashCode和equals方法来定。原创 2015-12-03 20:27:22 · 1708 阅读 · 0 评论 -
Object-C,NSURL,统一资源定位器
今天晚上最后一个例子,写完休息娱乐一会。 URL,统一资源定位器,可以定位网络上的一个资源。 没啥难的,还是对象、方法、API。和Java等语言没有啥区别。 不亲自一点点写一遍,印象不深,今后进一步深入学习iOS时,会遇到很多问题,倒是再回头看,也没效率。 代码//// main.m// NSURLTest//// Created by fansunion on 15/12原创 2015-12-02 21:27:15 · 1928 阅读 · 5 评论 -
Object-C,数组NSArray
晚上回来,写了2个iOS应用程序。 就是在界面中,展示标签。一种是手动构造界面,然后绑定事件。另外一种是,使用自带的界面作为容器,但是手动向里面放其它界面元素。 书中的观点是,使用图形化界面,构造界面比较好。 然后,又写了个Object-C数组的例子。 Object-C相对简单一些,黑屏控制台输出,而iOS可视化界面的程序,代码较多,也不好描述。 iOS程序的“上下文环境”更复杂一原创 2015-12-01 21:24:34 · 2227 阅读 · 0 评论 -
Object-C,循环语句for,while,do-while
演示循环语句,for,while,do-while,和C系列的语言,语法基本一致1到10,求和原创 2015-11-29 14:31:23 · 1741 阅读 · 1 评论 -
Object-C,遍历目录
最近武汉连续下雨很多天,降温了2次,温度一下子由28度到14度,再到8度,手太冷了。加上最近发生了一些比较棘手的家庭琐事,最近没心情继续学习Object-C。后来,我想明白了,心情不好的时候,还是应该坚持学习。郁郁寡欢,于事无补,该干嘛干嘛去~不开心的事情,总会过去的。等过去之后,该做的事情总是要继续做的。因为不开心,浪费不少大好时间,才是雪上加霜的。计划2015和2016年,初步掌握iOS开发。原创 2015-11-29 13:21:02 · 1926 阅读 · 4 评论 -
Object-C,NumberDemo和StringDemo
晚上抽空写了2个Demo.第1个是演示字符串,第2个是演示数组和可变数组。只用到了几个基本的方法和基本语句。NSString字符串对象,NSNumber和NSMutableNumber,if语句,NSLog方法。使用Mac学习Object-C,感觉特别辛苦。编程语法很简单,就是Mac的键盘按键、快捷方式、鼠标滚动,与Windows和HP电脑很不匹配。另外,Object-C最大的坑是,方法调用,[a原创 2015-11-16 23:35:47 · 1721 阅读 · 0 评论 -
Object-C初体验
前几周,看了书,标记了要Coding的例子。(书是写博客,CSDN送的,也可以用C币买) 周末,来搞几个例子。 2015年春,刚刚买Mac的时候,就搞了1个Object-C的HelloWorld,毕竟新手。 总的来说,Mac、XCode、Object-C,用起来特别的不习惯啊。 操作系统、快捷键、IDE的用法,难受的要死,毕竟用了10多年Windows,一下子很难切换到Mac。 买的原创 2015-11-15 16:33:28 · 1716 阅读 · 0 评论 -
微信开发学习日记(八):7步看懂weiphp插件机制,核心目标是响应微信请求
又经过了几个小时的梳理、回顾,截至目前,终于对weiphp这个框架的机制搞明白了些。想要完全明白,自然还需要大把的时间。 第1步: 配置微信公众号,http://weiphp.jiutianniao.com/ ... .html 从上面这个配置可以看出,微信请求呗weiphp的入口文件index.php接收了,可能会被/home/weixin/index/这个action响应。第2步:原创 2015-04-17 10:58:09 · 3472 阅读 · 0 评论 -
微信开发学习日记(七):开源微商城wemall
最近嘛,不是在调研PHP和微信的行情么。 发现,微商城是非常火爆的一个领域,既然业务有搞头,那么技术这一块也有很多选择。 网上发现了wemall这个开源的PHP实现的微商城。 下载了开源版本,PHP后端、Android端。 PHP端的,已经部署了,功能是跑通了,但是发现,功能太少了。 商品-订单-用户-支付,算是最精简的购物程序了。 目前只是大致喵了几眼,代码量不算大。原创 2015-04-17 00:20:54 · 4412 阅读 · 1 评论 -
微信开发学习日记(五):weiphp开源框架的bug,公众号权限编辑问题
最近在研究weiphp,总体感觉还行,bug据说还挺多。这不,我就遇到一个比较严重影响使用的。感觉不太应该出现这么严重的bug啊。 weiphp的微信公众号等级,权限增加和编辑bug,看不到权限列表,只能看到“好人”和“环境”2个不正确的插件名称。[系统BUG] 用户权限无法正常显示问题描述:用户->公众号等级->编辑 出现好人与环境两个插件解决办法:后台新增加公众帐号等级错误地址http:/原创 2015-04-14 10:15:26 · 3443 阅读 · 0 评论 -
微信开发学习日记(三):6点经验
1.token验证和微信请求响应token验证,用get方法。 微信请求入口,用psot方法。 一个微信公众号或者轻应用的入口,就是一个url,同一个url分为get和post。 get的时候,4个参数都不为空,必须校验。 post的时候,也要校验参数,只是不用输出echostr。post的时候,echostr可能为空,是否要检查echostr是否为空呢?既然不用输出,按说不需要校验。2.接口访问原创 2015-04-02 23:03:27 · 1843 阅读 · 0 评论 -
微信开发学习日记(二):3个案例
上次是调通了“消息来自微信请求”一个请求验证接口。 今天下午,正式进军微信开发,完成了3个案例的demo,测试通过。 上次,提到读了5本书,4本PHP描述的,一本Java描述的。个人专注Java开发7年了,更倾向于用Java,当然PHP也要立即着手深入学习了。今天好几个PHP的外包项目,感觉太麻烦,都拒绝了。 Java的书,柳峰写的那本就非常好,至少可以用Good描述,Perfec原创 2015-04-01 18:00:33 · 2137 阅读 · 0 评论 -
微信开发学习日记(一):快速阅读5本书,掌握整体背景
2015年1月开始学习微信开发。 已经有多年开发经验了,从网上文章来看,微信开发主要是接口,然后是业务逻辑,不是很难。所以,我比较强调学习效率。一天学一点,是不能满足我的快速学习欲望的。 在京东上,买了5本微信开发的书,机械工业出版社的IT相关的书,质量还不错。1本是Java的,4本是PHP的。Java的那本,是CSDN博客专家“柳峰”写的,很不错,由于熟悉Java,代码很快就看懂原创 2015-02-27 18:03:18 · 2273 阅读 · 0 评论 -
微信开发学习日记(六):weiphp框架
最近重点在看weiphp这个开源的第三方微信公众平台框架。 在网上找微信资料,找到了这个。很早之前,就初步学习了Thinkphp和Onethink2个开源框架,当看到weiphp是用这2个框架开发的时候,我就更愿意去学习,毕竟学习成本很低了。 weiphp,目前开源版本,感觉没有重点维护了,bug不少。遇到bug,去官方论坛找找答案,很多热心网友都分享了解决办法。 但是,开源版本还是很不错原创 2015-04-16 22:50:34 · 5374 阅读 · 0 评论 -
Object-C,NSArraySortTest,数组排序3种方式
晚上回来,继续写Object-C的例子,今天不打算写iOS可视化界面的程序,太累了。 刚刚dady又电话过来,老一套,烦死了。 其实,我一直一个观点,无论发生什么事情,不要整天一副不开心的样子。 开开心心过日子,活着就要懂得珍惜。 刚刚写了数组排序,有3种方法,使用对象自带的compare方法、传入比较函数、匿名函数-代码块。 个人认为,本质是2种方法。 一种是,类似Java中的原创 2015-12-02 20:48:20 · 1888 阅读 · 0 评论 -
Object-C,对象和方法
学习Object-C,买了2本书,其中1本是用C币买的,总体质量一般,比较基础。 另外一本是,疯狂-李阳写的,大部头,比较吓人,比较全一点。 对于面向对象,之前还是有个大概的理解,再多点基础的例子。 目前,用着最不习惯的是,有多个参数的方法。这一点和C系列的语言,很不一样,着实让人难受啊。 代码 //// main.m// ObjectPerson//// Created by原创 2015-12-03 21:05:26 · 2023 阅读 · 0 评论 -
Android群英传-拼图游戏puzzle-代码设计和实现
上个周末,3个小时总体上读完了《Android群英传》,本周主要在研究代码层次的设计和实现。 编译安装在手机上,玩了几把,结合代码,一周时间才掌握了整体的思路。 大部分时间,其实花在了“重构”上。 重构的过程,就是学习和思考的过程。 本文,算是一篇学习总结,总体介绍下这款小游戏的实现思路。 后面抽空,再改造下这个游戏不合理的设计方式,即格子是N*N+1,而不是N*N个。 写到快原创 2015-12-05 13:13:07 · 4710 阅读 · 6 评论 -
小米开源便签Notes-源码研究(2)-定时提醒的便签
本篇讲述小米便签中的定时提醒功能。 便签,可以理解为一件事情,一项任务,有个定时提醒的功能,还是蛮不错的~ 小米便签定时功能,是当编辑便签的时候,有个菜单项,选了之后,就弹出一个“日期对话框”,选择了日期,就设置了定时功能。 下面讲解技术实现的整体思路(很多地方我也不懂,不懂的就搜索): AndroidManifest.xml配置原创 2015-11-10 17:50:58 · 6251 阅读 · 0 评论 -
小米开源文件管理器MiCodeFileExplorer-源码研究(8)-文件排序工具类FileSortHelper
FileSortHelper的核心功能就是,对文件集合FileInfo排序。FileInfo有若干字段,根据字段定义了4种比较器Comparator。调用示例:Collections.sort(List, Comparator);实现排序,FileInfo可以实现Comparable接口,但是比较方式是固定的,也就是说只能采用一种方式排序。而Comparator则比较灵活,更像是一种“策略模式”,原创 2015-10-29 19:56:10 · 2178 阅读 · 1 评论 -
小米开源文件管理器MiCodeFileExplorer-源码研究(7)-Favorite收藏管理和SQLite数据库CRUD
FavoriteDatabaseHelper,存储favorite数据,到SQLite数据库。SQLiteOpenHelper是一个帮助管理数据库和版本的工具类。通过继承并重载方法,快速实现了我们自己的Favorite表的CRUD。怎么感觉和FileOperationHelper类似,仍然是CRUD,只不过1个是数据库中的,1个是文件的。代码比较简单,每个函数的功能比较单一清晰,CRUD,主要是使原创 2015-10-29 19:54:36 · 2101 阅读 · 3 评论 -
小米开源文件管理器MiCodeFileExplorer-源码研究(5)-AsyncTask异步任务
说明:本文的文字和代码,主要来自于网上的2篇文章。 第4篇的时候,提到了异步任务AsyncTask。 网上找了2篇文章学习下,copy网友的代码,稍微改了几个字,运行成功了。 在开发Android移动客户端的时候往往要使用多线程来进行操作,我们通常会将耗时的操作放在单独的线程执行,避免其占用主线程而给用户带来不好的用户体验。但是在子线程中无法去操作主线程(UI 线程),在子线程中操作UI线程原创 2015-10-28 21:22:15 · 2222 阅读 · 0 评论 -
小米开源文件管理器MiCodeFileExplorer-源码研究(2)-2个单实例工具类
从本篇开始,讲解net.micode.fileexplorer.util工具包中的类。这个包下的类,功能也比较单一和独立。很多代码的思想和实现,可以用于JavaWeb和Android等多种环境中。一、单实例活动管理器ActivitiesManager一个单实例的活动管理器,从方法的被调用程度来看,“徒有其名”。registerActivity注册活动方法被使用了,而getActivity没有被使用原创 2015-10-28 09:23:13 · 2423 阅读 · 0 评论 -
小米开源便签Notes-源码研究(1)-导出功能整体思路
NotesListActivity是入口Activity。响应菜单事件,我的手机是“左键菜单”。如果菜单项的ID是“R.id.menu_export_text”,就执行导出,保存到/mnt/sdcard/MIUI/notes目录下。@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getI原创 2015-11-10 15:13:49 · 5050 阅读 · 0 评论 -
小米开源便签Notes-源码研究(0)-整体功能介绍(图文并茂)
本周对小米开源文件管理器,做了整体的研究,大致弄清了源码的来龙去脉,剩下的就是重点研究几个活动的流程了。 讲解Android应用这种可视化的程序,感觉还是有图比较好,不然功能界面都不清楚,自己不好介绍,读者也摸不着头脑。 从今天开始,小雷哥哥要开始研究,小米开源便签Notes了。 这次要改进一下模式:不但要整体介绍功能,还要对着图,图文并茂介绍,才清清楚楚~ 为此,我手机逐个截原创 2015-10-31 10:53:42 · 12175 阅读 · 14 评论 -
小米开源文件管理器MiCodeFileExplorer-源码研究(4)-文件操作工具类FileOperationHelper
文件操作是非常通用的,注释都写在源代码中了,不多说~需要特别说明的是,任务的异步执行和IOperationProgressListener。拷贝和删除等操作,是比较费时的,采用了异步执行的方式~Android异步执行,我也是初次了解,在CSDN上找了一篇文章,后续写个单独的例子,单独写1篇介绍。http://blog.csdn.net/xufenghappy6/article/details/73原创 2015-10-28 12:01:49 · 3059 阅读 · 0 评论 -
小米开源文件管理器MiCodeFileExplorer-源码研究(1)-2个模型Model
上篇说到,把小米的Java代码整理成了5个包,其中1个是net.micode.fileexplorer.model。这个包就2个模型类,最基本了,FileInfo和FavoriteItem。package net.micode.fileexplorer.model;/** 抽象了一个文件最基本的信息 */public class FileInfo { // 文件名 public Str原创 2015-10-28 08:59:39 · 2493 阅读 · 0 评论 -
APK文件浅析-Android
2011~2015,5年时间,断断续续学习了Android。 最近打算在2011年2个月认真学习的基础上,深入学习下。 由于有之前的Android基础,加上N年的Java等变成经验,自我感觉Android应用开发还是比较简单的。 至少相比iOS开发来说。 继续坚持自己的习惯,写点自己的体会,总结自己的经验。 学了又忘了,没啥用啊~ Android打包之后,生成了APK文件。原创 2015-10-25 17:32:48 · 2153 阅读 · 0 评论 -
小米开源文件管理器MiCodeFileExplorer-源码研究(9)-入口分析
AndroidManifest.xml是Android应用程序最重要的配置文件。入口文件和intent-filter<application android:icon="@drawable/icon" android:label="@string/app_name" android:theme="@android:style/Theme.Holo.L原创 2015-10-31 09:37:51 · 3989 阅读 · 5 评论 -
小米开源文件管理器MiCodeFileExplorer-源码研究(6)-媒体文件MediaFile和文件类型MimeUtils
接着之前的第4篇,本篇的2个类,仍然是工具类。MediaFile,媒体文件,定义了一大堆的常量,真正的有用的方法就几个。isAudioFileType、isVideoFileType之类的。MimeUtils,文件类型工具类,定义了一大堆的 add("application/zip", "zip"); 某种扩展格式,对应的mime类型。 通过阅读代码观察到的2点现象,我有2点猜测:现象原创 2015-10-28 21:46:59 · 3455 阅读 · 0 评论 -
小米开源文件管理器MiCodeFileExplorer-源码研究(0)-初步研究
2011年对着书本Android应用开发揭秘,写了2个月的HelloWorld。 现在想复习并深入,我没有耐心再去一点点地敲代码了。 4年前自己是个学生,实习,现在有工作,只能业余时间研究。 这一点是非常不同的。 我希望通过研究别人的“成熟产品”,更好地全面学习。 以目标为导向,具体来说,通过研究别人的一个产品,进而全面掌握,在研究的过程中,把若干问题都解决了,从而达成“快速进步”的原创 2015-10-25 18:13:04 · 4219 阅读 · 3 评论 -
Android中Service的一个Demo例子
Android中Service的一个Demo例子 Service组件是Android系统重要的一部分,网上看了代码,很简单,但要想熟练使用还是需要Coding。 本文,主要贴代码,不对Service做过多讲解。 代码是从网上找的一个例子,Copy下来发现代码不完全正确,稍微修改了下。 AndroidManifest.xml <application android:ic原创 2015-11-14 17:58:09 · 5954 阅读 · 4 评论 -
Android开发之Menu:OptionMenu(选项菜单)、ContextMenu(上下文菜单)、SubMenu(子菜单)
菜单的概念,现在已经很普及了。Windows系统、Mac、桌面版Linux、Java Swing等,都有可视化菜单。一、Android平台3种菜单 选项菜单(OptionMenu)、上下文菜单(ContextMenu)、子菜单(SubMenu)。1.Option Menu 一般手机上都会提供Menu的按钮,对应的就是这个菜单弹出。 主要步骤就是复写Activity父类中的onCreateOpti原创 2015-11-20 10:24:28 · 4018 阅读 · 0 评论 -
Android通过XML来定义Menu
直接在代码中添加菜单项,给菜单项分组等,这是比较传统的做法,它存在着一些不足。比如说,为了响应每个菜单项,我们需要用常量来保存每个菜单项的ID等。为此,Android提供了一种更好的方式,就是把menu也定义为应用程序的资源,通过android对资源的本地支持,使我们可以更方便地实现菜单的创建与响应。b本文就介绍如何使用XML文件来加载和响应菜单,我们需要做这几步:1.在/res目录下创建menu原创 2015-11-20 15:47:24 · 2919 阅读 · 2 评论 -
Android群英传-拼图游戏puzzle-6点吐槽
一、缘由 经常写文章,混了一些C币。最近在深入学习Android应用开发,就从商城里买了一本《Android群英传》。这本书的内容,不是纯粹的入门那种,分几个章节,重点讲解Activity、动画等。最后一章是2个小游戏的实例,其中1个是拼图游戏。 认真研究了下作者的代码,有不敢苟同的地方,特意吐槽几句。二、游戏相关资料 游戏名称:拼图、移动拼图、滑动拼图、Pullze 在搜索过程中,搜到了原创 2015-12-05 12:57:05 · 3469 阅读 · 16 评论 -
微信开发学习日记(四):研究和部署开源产品
4月份开始,在深入研究微信开发了。 在了解了更多信息之后,发现微信这玩意,非常简单,也非常复杂。 简单,官方就提供了几十个接口,实现起来很简单嘛。网上有几套Java版的实现,PHP的就更多了。 API的实现,Java方面,我是根据柳峰微信开发那本书的代码,经过大量改造弄的,目前实现了一半的接口,剩下的一半,晚点需要的时候再实现。Java的代码,看起来比较清晰。 PHP方面,网上也有原创 2015-04-13 12:31:52 · 2178 阅读 · 4 评论