
移动
yczz
8年大型企业软件研发经验,目前在公司技术研究中心担任部门经理。专注技术架构、分析设计相关技术研究。平常喜欢摄影、读书、爬山、看电影
展开
-
移动开发者必须了解的10大跨平台工具
在本文中,我们盘点了过去的一年里,最受开发者喜爱的跨平台应用及游戏开发工具,尤以HTML/JS/CSS为众,却也包含使用其他语言进行开发的工具,比如Xamarin,使用C#,就能开发出运行于各大主流移动平台上的原生App。成本低、周期短,易于上手,不用重新设计,种种好处让跨平台开发风头无量,也让诸多跨平台开发工具趁势崛起。在本文中,我们盘点了过去的一年里,最受开发者喜爱的跨平台移动应用转载 2014-02-25 22:32:32 · 19843 阅读 · 4 评论 -
Android推送方案分析(MQTT/XMPP/GCM)
本文主旨在于,对目前Android平台上最主流的几种消息推送方案进行分析和对比,比较客观地反映出这些推送方案的优缺点,帮助大家选择最合适的实施方案。方案1、使用GCM服务(Google Cloud Messaging)简介:Google推出的云消息服务,即第二代的C2DM。优点:Google提供的服务、原生、简单,无需实现和部署服务端。缺点:Android版本限制(必须大于2.转载 2014-08-07 13:06:29 · 896 阅读 · 0 评论 -
Android apk动态加载机制的研究(二):资源加载和activity生命周期管理
前言为了更好地阅读本文,你需要先阅读Android apk动态加载机制的研究这篇文章,在此文中,博主分析了Android中apk的动态加载机制,并在文章的最后指出需要解决的两个复杂问题:资源的访问和activity生命周期的管理,而本文将会分析这两个复杂问题的解决方法。需要说明的一点是,我们不可能调起任何一个未安装的apk,这在技术上是无法实现的,我们调起的apk必须受某种规范的约束,只有转载 2014-08-29 15:46:54 · 1011 阅读 · 0 评论 -
Android使用DexClassLoader动态加载未安装Apk
因项目要求需要做类似于维信或Q游这样插件化的开发模式,在网上也查了很多资料整理了一下并记在这里,可用两种方式:1. 通过后台安装,由于默认的安装是通过PackageInstallActivity界面去执行安装的,此界面有一个Dialog和一个ProcessBar,不能更改,想做些手脚一直没找到方法,所以有了下面这一出。方法:反射出sdk中的隐匿类PackageIns转载 2014-08-29 15:55:52 · 7060 阅读 · 0 评论 -
Android apk动态加载机制的研究
背景问题是这样的:我们知道,apk必须安装才能运行,如果不安装要是也能运行该多好啊,事实上,这不是完全不可能的,尽管它比较难实现。在理论层面上,我们可以通过一个宿主程序来运行一些未安装的apk,当然,实践层面上也能实现,不过这对未安装的apk有要求。我们的想法是这样的,首先要明白apk未安装是不能被直接调起来的,但是我们可以采用一个程序(称之为宿主程序)去动态加载apk文件并将其放在自己的转载 2014-08-29 15:45:01 · 823 阅读 · 0 评论 -
android 程序开发的插件化 模块化方法 之一
框架已经放出:android-application-plug-ins-frame-work安卓应用程序插件化开发框架 -AAP Framework 在android的项目开发中,都会遇到后期功能拓展增强与主程序代码变更的现实矛盾,也就是程序的灵活度。 由于linux平台的安全机制,再加上转载 2014-08-29 15:58:04 · 3037 阅读 · 0 评论 -
安卓应用程序插件化开发框架 -AAP Framework
介绍了一种安卓开发中程序插件化的方法,想想应该可以搞的更方便些,于是花了4天时间把框架做出来了,希望能对大家有用。 android-application-plug-ins-frame-work安卓应用程序插件化开发框架 -AAP Framework 介绍这个框架的初衷,是为了方便让程序模块化、插件化,将一个转载 2014-08-29 16:02:10 · 2534 阅读 · 0 评论 -
Android动态加载jar、apk的实现
前段时间到阿里巴巴参加支付宝技术分享沙龙,看到支付宝在Android使用插件化的技术,挺好奇的。正好这几天看到了农民伯伯的相关文章,因此简单整理了下,有什么错误希望大神指正。 核心类 1.1 DexClassLoader类 可以加载jar/apk/dex,可以从SD卡中加载为安装的apk。 1.2 P转载 2014-08-29 15:52:15 · 2771 阅读 · 0 评论 -
Android推送方案分析(MQTT/XMPP/GCM)
本文主旨在于,对目前Android平台上最主流的几种消息推送方案进行分析和对比,比较客观地反映出这些推送方案的优缺点,帮助大家选择最合适的实施方案。方案1、使用GCM服务(Google Cloud Messaging)简介:Google推出的云消息服务,即第二代的C2DM。优点:Google提供的服务、原生、简单,无需实现和部署服务端。缺点:Android版本限制(必须大于2.转载 2014-11-12 17:33:33 · 852 阅读 · 0 评论 -
Android开发之如何保证Service不被杀掉(broadcast+system/app)
序言最近项目要实现这样一个效果:运行后,要有一个service始终保持在后台运行,不管用户作出什么操作,都要保证service不被kill,这可真是一个难题。参考了现今各种定制版的系统和安全厂商牛虻软件,如何能保证自己的Service不被杀死呢?其实除了常规的手段,我们可以参考一下微信和360,设置-程序-正在运行,可以看到微信是同时开启了两个进程和服务:【有兴趣可转载 2014-11-24 15:52:36 · 2743 阅读 · 0 评论 -
Android设备信息获取
近个多月之前整理的,记录,共享。 1)android 获取设备型号、OS版本号: [java] view plaincopyimport android.os.Build; // ..... Build bd = new Build(); String model = bd.M转载 2014-12-01 14:56:36 · 790 阅读 · 0 评论 -
为什么移动Web应用程序很慢(译)
前些日子,看到Herb Sutter在自己的博客中推荐了一篇文章《Why mobile web apps are slow》,在推荐里他这样写道:“I don’t often link to other articles, but this one is worth reading.” 我不经常链接到其它文章,但是这篇文章的确值得一读。“He offers dat转载 2015-12-14 12:49:16 · 1264 阅读 · 0 评论 -
H5、React Native、Native应用对比分析
摘要 2015年是React Native发展的一年,2016年必定是React Native蓬勃的一年!2016年React Native很可能成为最为成功的开源技术之一。为什么React Native这么火呢?那么React Native相比H5、Native又有哪些优势呢?使用React Native的正确姿势又是怎样呢?React Native React h5 《React Na转载 2016-01-06 13:07:46 · 58396 阅读 · 6 评论 -
Genymotion下载模拟器失败解决方案
下载模拟器的时候经常出现下面的问题:(Connection timeout occurred) 解决方法:1、查看你要下载的模拟器的版本,我要下的版本是6.0.0 2、到C:\Users\yourname\AppData\Local\Genymobile\Genymotion\ova该目录下找ova文件,yourname就是你自己的电脑用户名。转载 2016-02-19 21:51:02 · 10468 阅读 · 2 评论 -
React-Native android在windows下的踩坑记
坑很多,跳之前做好准备。没有VPN的同学请浏览完本文后慎行。 你需要先安装最新版本的node.js(我最后使用的是v4.1.2),前往官网下载>>注:我win7已经安装过Visual Studio 2013和Android开发环境(也踩了不少坑,后面有截图) 为了方便切换npm源,需要先安装nrm模块 因为公司内把taobao全线转载 2015-10-24 01:39:24 · 11368 阅读 · 1 评论 -
react-native启动异常,react-deep-force-update/.babelrc
react-native,启动异常:[objc] view plain copy print?transforming [========================================] 100% 400/401Error while persisting cache: TransformError: /Users/wang转载 2016-02-20 21:43:31 · 963 阅读 · 0 评论 -
快速Android开发系列通信篇之EventBus
概述及基本概念**EventBus**是一个Android端优化的publish/subscribe消息总线,简化了应用程序内各组件间、组件与后台线程间的通信。比如请求网络,等网络返回时通过Handler或Broadcast通知UI,两个Fragment之间需要通过Listener通信,这些需求都可以通过**EventBus**实现。作为一个消息总线,有三个主要的元素:转载 2014-06-19 20:40:14 · 1088 阅读 · 0 评论 -
xStream完美转换XML、JSON
xStream框架xStream可以轻易的将Java对象和xml文档相互转换,而且可以修改某个特定的属性和节点名称,而且也支持json的转换;前面有介绍过json-lib这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/21/2023805.html以及Jackson这个框架,在线博文:http://www.cnb转载 2014-06-18 18:08:44 · 858 阅读 · 0 评论 -
跨平台移动开发工具:PhoneGap与Titanium全方位比拼
PhoneGap和Appcelerator Titanium,对于封装和配置移动应用程序而言,二者都是非常受欢迎的开源JavaScript框架。本文为Appcelerator开发者Kevin Whinnery对PhoneGap和Appcelerator Titanium进行的全方位的比较。以下为全部译文:我在面向开发者的各项活动和大会上经常被问及一个问题:Titanium与PhoneGap转载 2014-03-05 16:24:48 · 4589 阅读 · 0 评论 -
混合开发模式下主流移动开发平台分析
关键字:AppCan 移动开发平台 移动应用 Hybrid App在过去的两年中已经成为移动界的核心话题,但是作为一名Web开发者来说要如何站在移动互联网的浪潮之巅呢?是选择学习原生开发,研究Java、Object-C、C#等语言,还是选择继续使用网页开发,容忍HTML5功能的局限性?就在开发者左右为难的情况下Hybrid App作为一个折中的解决方案诞生了。那么究竟什么才是Hybrid Ap转载 2014-03-04 23:48:24 · 1629 阅读 · 1 评论 -
跨平台移动应用开发之 Flex 的崛起
欢迎各位 ActionScript 同仁的大驾光临, 我今天发布的消息非常振奋人心, 为此我这几天非常亢奋,热血沸腾. 开始前我先问大家两个问题:一个好的游戏能被玩多久? 几个月或者一年已经打破天了.一个好的应用能被用多久? 几年或者十几年也很常见. 不适合阅读本文的读者: 打算用 AS3 开发 2D/3D 游戏的相关人员.AS3 开发移动平转载 2014-03-08 18:45:35 · 5160 阅读 · 2 评论 -
跨平台打造移动原生应用的10大武器
编译工具对开发者的影响是直观的,开发者使用JavaScript等语言写出应用的代码,再将它们编译成原生代码。通过原生的API,完成跨平台的操作,最终分发到本地的应用商店中。由此可见,编译工具的选择可以直接降低开发成本,整个团队可以间接地快速捕捉市场、提高收益。今天我们为大家介绍了10款主流的原生转换编译工具,开发者们可以根据不同的特点来选取,提高自己编程的效率。1.Adobe Air转载 2014-03-08 22:37:21 · 1177 阅读 · 0 评论 -
2013年大尺寸Android平板横评
大尺寸平板横评 【手机中国 平板】2013年大尺寸平板迎来了新的挑战,有着小尺寸平板的全面围攻,大尺寸平板也不敢怠慢,因此在2013年很多大尺寸平板产品在硬件上对小尺寸平板进行全面的压制,否则自己的地位恐怕不保。其实并不是自身的问题,而是小尺寸平板在易用性和便携性上远远超越了它。这也是得大尺寸的产品在产品的外观和创新性上进行了全新的尝试。 大尺寸平板是平板电脑最初的转载 2014-04-01 23:11:59 · 1884 阅读 · 0 评论 -
2013年主流小尺寸Android平板终极横评
2013年是整个平板电脑行业迅速发展的一年,在这一年中平板电脑从之前的百家争鸣到如今面临整体的洗牌,低劣山寨的平板在今年出现的很少,而主打精品系列的产品占领了一定的市场份额。而小尺寸的平板在今年更是有不少出色的产品诞生,不管是苹果或者是谷歌都推出了自家小尺寸平板的得力之作,这对于整个行业来说也有着非常重要的意义。我们知道在2012年小尺寸平板迅速崛起,特别在7-8英寸之间的平板,这转载 2014-04-01 23:14:27 · 2902 阅读 · 0 评论 -
2013年度Q4季度及全年热门Android机型排行榜
2014年已经到来,在华人的春节还未来临的时候,我们似乎还没有一种跨年的感觉,但是在手机行业里,时间已经跳过,接下来我们就可以完完整整的来回顾过去的2013年,整个行业的发展变化。安兔兔为大家带来过去一年里手机产品的趋势和分布变化情况。今天我们首先来关注一下Q4季度与整个年度的热门机型。Q4季度:新机大量入围 TOP10极具变化榜单显示,前10位中三星凭借机海战术与转载 2014-04-01 20:30:10 · 1055 阅读 · 0 评论 -
别闯进Hybrid App的误区
【引言】Hybrid App,一种开发模式,兼顾Web和Native的一种开发模式。有人说它把Web App扼杀在摇篮里,有人说它把Native App引向一个新阶段。我说,它是一把双刃剑,千万别闯进它的误区。本文是笔者在实践Hybrid App开发模式过程中总结出的一些经验教训,供读者参考。Hybrid App虽好,可万万不能仓促选择,盲目运用。智能手机日益普及,移动互联网乱战日趋白热化转载 2014-03-21 20:50:58 · 1212 阅读 · 0 评论 -
iOS申请真机调试证书-图文详解
摘要 申请真机调试证书全过程,添加证书,添加AppIDs,添加设备,添加Provisioning profiles等过程,之前的发布证书还是与真机调试证书有些不同,故重新整理一篇苹果真机调试 provisioning Profile 真机调试证书 App ID目录[-]一、真机调试所需材料说明二、进入申请界面三、添加App ID四、添加设备(De转载 2014-04-04 23:24:05 · 16919 阅读 · 2 评论 -
Android 通知栏Notification的整合 全面学习 (一个DEMO让你完全了解它)
在android的应用层中,涉及到很多应用框架,例如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架,通知机制,ActionBar框架等等。下面就来说说经常会使用到通知机制中的通知栏框架(Notificaiton),它适用于交互事件的通知。它是位于顶层可以展开的通知列表。它会时不时的提醒你什么软件该更新了,什么人发你微信消息了等。转载 2014-06-04 13:26:11 · 13612 阅读 · 6 评论 -
Android实现推送方式解决方案
本文介绍在Android中实现推送方式的基础知识及相关解决方案。推送功能在手机开发中应用的场景是越来起来了,不说别的,就我们手机上的新闻客户端就时不j时的推送过来新的消息,很方便的阅读最新的新闻信息。这种推送功能是好的一面,但是也会经常看到很多推送过来的垃圾信息,这就让我们感到厌烦了,关于这个我们就不能多说什么了,毕竟很多商家要做广告。本文就是来探讨下Android中实现推送功能的一些解决方案,也转载 2014-05-22 21:46:50 · 934 阅读 · 0 评论 -
AndroidAnnotations注解说明
@EActivity(R.layout.sample) 注释可以设置Layout,相当于setConentView方法@OptionsMenu(R.menu.sample) 设置Activity的菜单项@EProvider 在ContentProvider中启用Annotations@EReceive 在BroadcastReceiver中启用Annotations转载 2014-06-08 21:01:26 · 4101 阅读 · 0 评论 -
Android开源项目分包方式学习
总感觉Android中关于分包的文章很少,或者几乎可以说没有。但是合理地分包,又可以使整个项目模块化,减少包与包之间的依赖,让整个项目的框架更加清晰,更利于后续功能的拓展。因为没有相关的文章,所以这里晒出三款开源项目的分包方式,供大家学习。(一) eoe社区 Android 客户端src├ cn.eoe.app --存放程序全局性类的包 ├ cn.eoe.app转载 2014-05-23 22:28:30 · 7985 阅读 · 3 评论 -
HttpClient doPost doGet 请求 返回内存流
import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.ObjectOutputStream;import java.io.OutputStream;import java.io.UnsupportedE转载 2014-05-24 18:51:28 · 5430 阅读 · 0 评论 -
Android之Handler用法总结
方法一:(java习惯,在android平台开发时这样是不行的,因为它违背了单线程模型)刚刚开始接触android线程编程的时候,习惯好像java一样,试图用下面的代码解决问题 new Thread( new Runnable() { public void run() { myView.invalidate();转载 2014-05-25 23:13:56 · 576 阅读 · 0 评论 -
React-Native学习指南
本指南汇集React-Native各类学习资源,给大家提供便利。指南正在不断的更新,大家有好的资源欢迎Pull Requests!同时还有Awesome React-Native系列https://github.com/jondot/awesome-react-native目录教程React NativeReact.jsES6系列教程开源APP组件工具资转载 2016-02-23 11:30:51 · 10337 阅读 · 1 评论