![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
App
文章平均质量分 88
包建强
这个作者很懒,什么都没留下…
展开
-
写给Android App开发人员看的Android底层知识(1)
这是一组写给App开发人员看的系列文章,先后介绍了Binder、AIDL、四大组件、AMS、PMS等核心思想,以及App安装流程、App启动流程。因为面向的读者是App开发人员,所以尽量不贴底层的代码,用浅显易懂的语言,为读者展现一个全新的世界。原创 2017-05-19 11:56:38 · 5379 阅读 · 3 评论 -
App设计模式纵横谈(2)
那我们今天就从“我们应该多用类的引用,而不是类的继承”这个点讲起来。原创 2017-05-03 02:18:29 · 4382 阅读 · 1 评论 -
App设计模式纵横谈(1)
今天聊聊我沉淀比较久的一门技术,设计模式。这里是第一篇,算是概论,讲一下我这些年来学习设计模式的心路历程。 (一) 设计模式和数据结构,在日常开发工作中,无论是App还是后端Java开发,都非常实用,是必须要牢牢掌握的两门基本功。原创 2017-05-01 16:30:56 · 7794 阅读 · 3 评论 -
React Native学习(1):怎么快速学习一门新技术
这是我技术公众号的第一篇文章,也是React Native系列文章的第一篇,对我的文章感兴趣的可以加我微信16230091进行关注。原创 2017-04-30 17:24:43 · 5555 阅读 · 4 评论 -
App竞品技术分析 (6)热修复
1 Native页面和Html5页面的相互切换 终于说到这里了,Native页面和Html5页面的相互切换,这是最激动人心的技术,比我一直在研究的App插件化技术还要震撼。因为插件化技术只能适用于Android,对iOS无能为力。即使如此,搞Android插件化技术需要投入大量的人力物力。如果团队不够大是不建议搞插件化编程的。记得2年前我去一家公司面试,他们当时就在搞App插件化,面试时问我原创 2015-10-22 21:45:44 · 13273 阅读 · 7 评论 -
App竞品技术分析 (4)性能优化
1 App自动选取最佳服务器的策略 我们经常看到App中会包含有一个服务器列表文件,开发人员和测试人员可以随意切换到任意服务器进行开发测试工作。 这只是服务器列表文件的一种功用,是给开发和测试人员使用的,为此我们需要为App设计一个后门,由他们手动进行切换,相关内容请参见2章节。 服务器列表文件还有另一种作用,就是由App自己来决定选用哪个服务器作为MobileAPI服务器。原创 2015-10-22 21:42:42 · 5102 阅读 · 2 评论 -
App竞品技术分析 (3)减小安装包的体积
1 从几件小事说起 春节在家帮姐姐的iPhone手机安装市面上形形色色的App,忘记她是使用4G流量包月了,于是在下载了10个App后,不但耗尽了流量,还按照0.3元/兆的价格扣了七八十元流量费用。后来我检查了这几个App的体积,发现每个App体积都是40-50M的样子,这让我很吃惊,因为我记得两年前这些App也就在10-20M的样子。 另一件记忆犹新的事情,是去公园景点游玩,当时公园原创 2015-10-22 21:41:46 · 10485 阅读 · 5 评论 -
App竞品技术分析 (8)模块化拆分
1 iOS资源拆分与模块化 对于iOS,很多App已经注意到图片会散落在各个地方,于是会把图片、配置文件、xib按照模块进行归类,放到各自的bundle包中。做得最好的,是一家电商App,会在App包中的一级目录下面,看不到任何图片,而只有若干bundle,如图9-18所示: 图9-18 某款App包中,对资源进行了模块化拆分 只对资源进行模块化拆分是远远不够的。一定要对原创 2015-10-22 21:46:55 · 9498 阅读 · 1 评论 -
App竞品技术分析 (5)数据采集工具
1 页面跳转器 页面跳转器是页面打点的前提。 对于Android而言,有Intent来帮助我们进行页面跳转和传值。但是你会发现,想从A页面跳转到B页面,在A页面要声明B页面的实例,这是一个强引用,如下所示:Intent intent = new Intent(MainActivity.this, SecondActivity.class);startActivity(inte原创 2015-10-22 21:45:10 · 9978 阅读 · 4 评论 -
App竞品技术分析 (1)App启动速度
无论是哪个App,它的启动步骤都大体相同,如图9-3所示: 图9-3 App启动流程 我们仔细研究一下图9-3中的每一步都做了哪些事情: 1)Splash广告的逻辑是,首次加载App包中的图片,同时调用MobileAPI的一个接口,获取下一次打开的图片URL,把这张图片存放在本地。那么下次再打开这个App时,就加载这张新图片,同时,仍然调用MobileAPI的那个接口,看原创 2015-10-22 21:40:08 · 7942 阅读 · 2 评论 -
App竞品技术分析 (7)逼出来的奇思妙想
1 一切皆可配置1.1 使用XML配置首页,防止因加载不到数据而没有入口 在很多电商类App中,我们会看到有一个配置文件或者JSON文件,里面存放着首页展示所需要的所有数据,包括图片、文字等等,点击后能进入各个品类这些二级页面,如图9-15所示,我们可以看到,这个首页由3个Tab组成:首页、发现、个人中心,配置文件中指定了每个Tab的显示文字、点击后对应的ViewController、所原创 2015-10-22 21:46:18 · 8668 阅读 · 0 评论 -
App竞品技术分析 (2)Html5页面的打开速度
1 把Html5页面嵌入到Zip包中 App中会使用很多Html5页面。我们一般使用内置的WebView来打开一个外部的URL地址,这样一来,速度就肯定不如App原生的页面快了。 我们可以打开几个App的Html5页面来进行比较,差距立刻就能看出来。当年我就是被老板追着问为什么竞争对手的App打开Html5也就1-2秒,而我们的App加载Html5页面就跟牛车一样慢。 我看过很多原创 2015-10-22 21:40:58 · 8387 阅读 · 5 评论 -
App竞品技术分析 序言
这一篇文章,我整整写了两个月,期间,我仔细研究了上百款App的技术实现,管窥到很多先进的思想,如安装包的结构和大小、开机速度、HTML5页面的打开速、性能优化、数据采集工具、ABTest、热修补、模块化拆分等。希望通过本章的介绍,能在各个公司成立这样的一个部门或者团队,从产品和技术两个维度进行竞品分析的研究工作。1 竞品分析概述1.1 App竞品定义我们通常将同行业内竞争对手的产品定义原创 2015-10-22 21:38:12 · 12230 阅读 · 10 评论