这款老牌 “装机必备” 应用,一边用 Kotlin 换血,一边深耕精细市场

在智能手机行业发展之初,大多数手机自带相机应用的表现都不能尽如人意。那时,一些算法强大的第三方拍照应用成了 “装机必备” 清单里的成员。Camera360 就是这样一个老牌 “装机必备” 的拍照类应用,已经近 8 岁 “高龄” 的它,曾经获选 Google Play "Best of 2016"。目前在 Google Play 上的总下载量超过 4 亿次。

△ 品果科技三位联合创始人徐灏、徐滢、顾锐 (左起) 虽然现在很多 Android 旗舰机的自带相机拍照功能越来越强大,第三方相机应用的必要性似乎越来越低。能在激烈的市场竞争中屹立不倒,得益于 Camera360 开发公司成都品果科技对于产品定位的精准拿捏以及最新技术的快速跟进。

这个老牌影像应用是如何在手机自带相机越来越强的冲击下顺利存活的?在技术层面又有哪些追求?这一次,我们带来的是 Camera360 的开发商品果科技的心得与故事。

及时跟进新技术 用 Kotlin "换血" 提效

任何一家技术驱动型公司,都会对热门领域的新技术嗅觉敏感。品果也不例外。品果的技术总监 Lee 在大概六七年前知道了 Kotlin 这种新型语言,那时候关于 Kotlin 的技术社区逐渐开始起步。2017 年,Lee 和同事参加 Google I/O 大会时见证了 Kotlin 正式成为 Android 官方语言的时刻,回到成都后,便开始在公司内部推动学习 Kotlin。在组织公司里的工程师们学习 Kotlin 时,Lee 改进了以往的培训方式。

“在内部推广学习 Kotlin 之前,我们公司的技术分享比较中规中矩,谈不上培训,很多人听了其他同事的分享以后有多少收获、能否落地,其实是不明确的。” Lee 说。

△ 品果科技开设的内部 Kotlin 课程 为了让 Kotlin 更快在公司项目中落地,Lee 最初选择了参加 StudyJams 的形式,动员公司里的同事组建了一个小组参加学习,最后也有四个同事顺利拿到了毕业证。后来也在公司内部建立了类似的学习机制,每周开课两次,对此感兴趣的工程师们自愿参加。因为一线的优秀开发者们普遍抱有随时充电学习的态度,所以每次课程都人满为患。值得欣慰的是,Kotlin 的学习曲线较为合理,既不会很平,也没有很陡 (您可以参考我们发布的文章《31天,从浅到深轻松学习Kotlin》),有 Java 语言基础的开发者上手并不困难。

当 Kotlin 成为品果科技工程师们 "标配" 技能后,Lee 开始尝试完全用 Kotlin 开发新的功能 —— 他们只用了三个月时间便将一个复杂度相当高的新模块开发到了可上线程度,但因产品策略的调整,目前这个新功能还未正式对外。

“虽然还没上线,但有了实操经验,可以说我们技术团队已经对Kotlin上手了。” Lee 说。

△ 内部 Kotlin 培训课 除了使用 Kotlin 开发新功能,品果也在用 Kotlin 重构 Camera360 的老模块。Camera360 的架构师表示,使用 Kotlin 可以显著减少代码行数。

“我们统计了整个项目中的所有代码,其中每个 Kotlin 文件的平均行数是 86 行,而相对每个 java 文件则平均接近 200 行,这能侧面反应 Kotlin 更加简洁;具体来说,我们的一个工具类库,在使用Kotlin重构之后,代码从 2600 行减少到了 1400 行。”

△ 品果科技的开发工程师在交流心得 而代码行数的减少意味着效率的提升,虽然没办法具体量化效率提升了多少,但一些提升是显而易见的,比如自动类型推断让编写代码更简洁,data class 可以减少大量的模板代码,默认参数减少重载方法的编写,字符串模板这些开发中最常用到的功能,另外 lambda 表达式、函数式编程和扩展方法这些更高级的功能也大大丰富了代码的编写方式和效率。

此外,使用 Kotlin 显著减少 NullPointerException 这个 Java 语言的老大难问题,在一个 90% Java 代码的老项目中,每个版本的前 50 条错误最高统计中,平均出现 1~2 次 NPE,而在一个 70% 使用了 Kotlin 代码的新项目中,很难在错误统计的前几页找到 NPE。

强大的语法糖也是深受工程师们喜爱的一个特性。目前,Camera360 大概有 10% 左右的代码使用 Kotlin 重构完成,这些 Kotlin 代码主要用在了相机模块和一些基础模块上,品果希望在一年之内把 Kotlin 的代码占比提升到 50%。

历史转折中的第三方拍照应用

第三方拍照应用逐渐淡出了智能手机的 "装机必备" 清单,是个无可否认的事实。在手机厂商越来越重视软件配套、手机自带相机应用愈发强大的当下,曾经叱咤风云的第三方拍照应用纷纷开始了转型。作为起步较早的第三方拍照应用,Camera360 也很早意识到了赛道的变化。品果科技 COO 顾锐表示,实际上,在如今的市场格局下,用户使用手机拍照已经被清晰地分成了两种场景:记录场景和创作场景。

手机厂商对摄像头以及算法的优化调教,是力求在记录场景中,给予用户更好的体验,让人们可以更加迅速、准确、真实地记录眼前的景象,讲究的是所见即所得。

而曾经的第三方拍照应用,虽然承担记录眼前景象的任务越来越少,但各家的核心都逐渐放到了创作场景中来,即让用户将喜爱的照片更加生动,这种需求下追求的差异化、风格化是和记录场景的初衷截然不同的。

点击这里可查看拍照场景视频

这两种拍照场景体现在手机商,辨识前后摄像头的定位差异。很多用户打开手机前置摄像头自拍的时候,希望把自己拍得美一点。但这个美也会有一个限度,可能会去做一些细微的修饰,但过犹不及。这个尺度其实并不好掌握,“点到为止” 的美化方案,便是 Camera360 长期以来在行业里摸索出的规律。

在发展初期,Camera360 是记录、创作两手抓,所以早期的一些滤镜如 LOMO、复古等,其实都是想让用户更好地记录所见到的世界。那个时候在各种特效之外,品果的技术团队还在相机启动速度,占用系统资源方面花了很多精力去优化,这也是其得以在第三方相机大战中脱颖而出的一个关键。

“但后来我们发现手机厂商在这方面做的越来越好,毕竟是自家生产的设备,所以在软硬件结合方面有着天然的优势,这时第三方拍照应用的记录场景几乎已经被剥夺了。” 顾锐表示。

所以在这样的产业转折中,第三方拍照应用将未来发展重心放在了创作场景中,品果也在 Camera360 之后,推出了 MIX 这样聚焦于影像后期创作的应用。

而在变现方面,Camera360 也在尝试向内容社区和新功能订阅模式发展。

品果曾经用 Google 的 AdWords 平台购买广告,但作为一个工具型产品,Camera360 在全球推广的核心依然是产品本身的运用前沿技术开发新功能,所建立起的口碑。比如,当年 Camera360 推出了创新性的动态贴纸功能,便凭借这个新的特性成功登顶日本应用市场。在 Google 推出了 ARCore 后,品果也第一时间选择了跟进,以期让动态功能的表现力更加优秀。

△ 品果的工作人员在 GDD 上 顾锐举了这样一个例子:Camera360 曾在全球范围举办了一个封面女郎征集挑战赛,用户可以将自己的照片上传到指定专区,获胜者将成为某一天 Camera360 的开机封面。这个活动在泰国、越南等市场吸引了大量的当地女性用户参加,后来品果联合那些热门地区的知名企业,提供当地演唱会的直通区选拔入口,也获得了用户欢迎。现在 Camera360 已成为东南亚国民级别的应用。

△ Camera360 在泰国举办的落地活动收到了当地用户的热烈欢迎 新内容订阅也是 Camera360 正在发力的方向。在海外市场,很多用户是愿意为更新的功能、特效付费的,顾锐提到 Camera360 在日本应用商店登顶,还曾获得热门偶像团体 AKB48 成员在综艺节目中力荐,这些其实都是靠内容和功能取得的成绩。

Firebase、Google Cloud Platform 等开发者工具都已经成为了品果日常工作中的好帮手。 一边学习新技术,一边利用新工具,早早扬帆出海的品果在多年的实践中,已经有了丰富的研发/运营经验。

“和 Google 合作了这么多年,我们成了坚定的新技术、新工具追随者,也受益良多。” 顾锐表示。

△ 品果科技旗下 "Camera360" 和 "Camera360 lite" 两款产品获 Google Play "Best of 2016" 的奖牌

成立近 8 年的品果,在日新月异的移动互联网领域见证了太多的行业变迁,自身也经历了从 "产品输出" 到 "技术输出",从 "记录场景" 到 "创作场景" 的定位升级。但无论行业如何变幻,保持对新技术的热情追求,是这家公司永葆活力的秘诀。

合适的技术就像一片含蓄而又前卫的滤镜,能将看似平凡的事业刻画得更加美好,也能折射出不一样的光线,照亮前行的路。

注: 本文配图的肖像权归拍摄对象本人所有,品果科技征得员工同意后授权使用

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PPV课数据科学社区

☞2018政府数据要开放?先看看现在长啥样【真相】

被堵成狗的种子君在国庆回来上班第一天就听说,发改委表示2018年将建成政府数据统一开放门户。听到这个消息,种子君不禁心中窃喜,脑补如下画面: 政府数据公开--拿...

3757
来自专栏take time, save time

编程一样可以很带感

    这个想法在我脑子里已经存在很久了,大约从大二的时候就开始有这个想法,原因是当时看到我心中无限向往和喜爱的计算机被教材和老师教授成那个样子,很多身边的同学...

3405
来自专栏SAP梦心的SAP分享

从《致加西亚的信》看项目管理

很多领导者或者成功学大师很喜欢在不同的场合引用《致加西亚的信》的内容,以此来激励和教育别人怎样做事才是好员工,他们对文中的主人公罗文的做事风格钦佩不已。

2834
来自专栏机器人网

岛国出奇葩 研发喂番茄机器人

---- 据国外媒体2月24日报道,日本又研发出一款奇葩机器人,它们的功能竟然是给我们喂食番茄!这款名为“小番茄”(Petit-Tomatan)的逗比机器人由...

1943
来自专栏人称T客

2017年终大片:中国开发者现状分析

都说中国的程序员没有女朋友,但却没有一个单身的,女程序员依然像恐龙级那样稀有,看片打游戏逛优衣库成为了他们生活中的标配,但是对于前沿技术热衷和对知识学习渴求却从...

32412
来自专栏飞总聊IT

如何迅速年薪百万(2):扫一屋与扫天下

过五关斩六将,经过一番艰苦奋斗,在众多面试者中拔得一筹,拿到了梦寐以求公司的录用合同,无论是对即将毕业的莘莘学子,还是职场奋斗多年的老兵,无疑都是非常可喜...

572
来自专栏知晓程序

一天的正确打开方式,从这款小程序开始

小程序体验师:佟垚 都说早餐要吃得像个皇帝,其实指的是要多吃含蛋白质、有营养的食物。

572
来自专栏养码场

一周播报|WePhone创始人苏享茂之死:程序员是否该逃离代码的象牙塔?

养码人B:加缓冲队列,异步存db。如果数据不大,直接先存交互,不要和db直接交互。全部的都放在内存,数据库定时写就行,但是注册的同时,还需要其他数据写入,所以如...

802
来自专栏机器人网

10款最适合初学者的机器人

机器人的需求每天都在增长,一同增长的还有机器人存在的意义。 个人、企业和工厂引进机器人的原因多种多样,越来越多的人以来科学技术,机器人的需求也随之增长。 因此...

3516
来自专栏BestSDK

龙芯CPU将开源,全民挑战英特尔?

开源的CPU核性能如何? 目前,除了龙芯、申威、飞腾等老牌设计单位拥有自己设计的高性能CPU核之外,国内大多数IC设计公司依旧处于购买国外的IP“攒”出一个SO...

29310

扫码关注云+社区