在程序员眼里,一直存在着“Android”和“安卓”的定义之争。总的来说,主要结论是:大陆的安卓系统是各家厂商深度定制的,碎片化明显,是国人目前已经习惯的操作系统;国外的Android系统是原生的、标准的,比较纯净。
手机系统能够完美运行并被用户接受,总是离不开手机硬件、系统和第三方软件。中国大陆“安卓”和国外“Android”的主要区别也体现在这三个方面。
系统底层:是用来连接硬件和应用层的,这方面基本差别不大,毕竟谷歌是基于Linux,厂商会有一些修改。体现比较明显的差别在于安卓系统版本的更新,国外相对来说更快。过去国内几乎历代安卓新系统都面临着这样一个尴尬:在新的安卓正式版系统发布的前半年左右时间里,新系统在份额上往往取得不了太大的突破,市场仍会被更早的两版系统所占据,直到近两年各大厂商发力才开始跟上节奏。
UI方面的区别在于,国内的定制ROM丰富多样,风格繁多。比如在交互方式上改动比较大的魅族Mback,设计风格改动比较大的锤子桌面等。同样的App如果不经过不同的适配就会出现不同的体验,为了避免这种差异,开发者就会不约而同的往iOS的体验方向靠,这也违背了Google的Material Design设计风格。
相对而言,国外Android由于在原生系统上开发,为了和原生应用保持对应的操作体验,大部分App会遵循Material Design设计风格,比如Facebook、YouTube、Twitter等。
服务层面的差异也是最大的,国外的手机会内置全套的Google框架服务,例如搜索、相册、日历、地图、应用商店等,一个gmail账户即可在所有系统和应用程序中畅通无阻,手机、平板、电脑都可以共享同步,这和苹果Apple ID同理。尤其Goople pley是海外应用分发市场的主流,因此应用审核和各种机制相对标准。
由于Google退出大陆,相应的应用无法访问,然而Android一系列的开源代码放在那儿,哪个厂商需要就拿过来自己组合,像国内小米的MIUI,华为的EMUI,锤子的Smartisan OS,魅族的Flyme OS,阿里的Yun OS等等,都是基于原生态Android的深度优化过来的,换上自己的服务框架,就成了小米账户、Flyme账户、欢喜云账户等服务。
在软件设计层面,安卓割裂性比较典型的还有消息推送的设计问题,但最让开发者头疼的,当属应用分发渠道问题。碎片化最高峰的几年,国内手机应用分发市场用“百团大战”来形容也不为过,上架一个应用要打无数个渠道包,并且每次发版时候的更新维护,各种抓包、数据打架等问题相信都曾让开发者们心力交瘁。
打APK渠道包的目的,除了用于分发应用市场、安装应用程序之外,更重要的是,由于无法使用Google play,谷歌官方配套的统计工具Google Analytics也同样无法作为效果统计依据,作为替代,分发渠道包可以通过不同的Channel ID(渠道标识)来进行标识,当用户安装该App后,能根据渠道参数获取安装数据,从而优化推广运营策略。
虽然这样做可以统计到不同渠道的来源数据,但是当渠道数量过多,或者同一个渠道要在不同平台进行推广时,打渠道包的方式明显就捉襟见肘了。尤其是像用户分享注册App的返利活动,或者地推类业务人员业绩统计,需要获取渠道来源信息,绑定分享者和受邀请者关系,才能走通业务流程,给用户或业务人员发放奖励。
常规技术解决方案:第一种,服务器需要区分每个分享者的App包,统计每个分享者的裂变用户量,以至于需要产生很多的App特定包,服务器负担大,维护难,产生资源浪费。第二种,每个分享者分享的都是同一个App包,被分享者安装注册后,需要在App内手动调用绑定分享者的分享码,才能统计出每个分享者的裂变用户量,而填写邀请码环节显然多出一个步骤,大大降低用户积极性。
但是当你以为这是个技术困境时,就有技术开发商在安装来源统计领域做出重大突破。在国内openinstall研发团队的打磨下,openinstall SDK使url具备携带动态参数安装的能力,在业务场景上,只需要将生成特定渠道参数的链接投放推广场景,就能完整统计各项安装数据和后续动态,替代了传统意义上的渠道打包环节。
另一方面,通过在url上携带邀请码、工号等自定义参数,可以在App完成登录后,自动将新注册的用户和传输过来的唯一识别码进行绑定关联。从而实现免填邀请码自动绑定、地推个人业绩统计等功能。
安卓技术难题当然不少,但饭总得一口一口吃,从实用性上来说,我认为这项新兴技术服务的出现有效提高了生产和推广效率,也大大解放了开发者的双手,在国内深度定制化的安卓开发环境下是值得关注一波的。
顺带一提,国内iOS系统的分发渠道虽然是App Store一家独大,但苹果提供的App Store Connect对安装来源统计还是做了挺多限制的,比如虽然能统计营销活动下载来源,但限制个数并且延迟公布,也统计不到后续打开App的内部操作。用上述openinstall可以作为一个补充方案,能同时统计Android和iOS渠道来源,实现自动绑定,并且后续用户操作可以通过API获取,也没有个数、延迟等限制。
今天就先聊到这里吧,总的来说,“Android”和“安卓”的争议就像围城一样,城外的人想进去,城里的人想出来。两者具体孰好孰坏,不必太早下结论,开发者能做的,就是把目光放长远点,努力提升自己,当技术和环境出现变革时,有足够的经验和能力追赶潮流,至少不要被后浪们轻易拍死在沙滩上。