独立产品研发系列文章第二篇

上篇文章从 iOS 开发的视角介绍了独立 App 从确定需求、开发、上线中所用到的一些资源。因为各项资源的限制,也只能完成一些仅上架于苹果 Appstore 的工具类 App。

这篇文章就着眼于一个具备完善功能的全平台产品的研发,研发过程中我们碰到的一些问题及其解决方案。在这里给大家分享一下我是如何一步步构建自己 公众号、小程序 + App 完整产品生态 的。

1、产品目标

产品目标往大了说,是指产品实现的价值。即使有用户场景存在,但做出来的产品没有价值(不能盈利,用户量极少),那也就没有存在的必要。

甚至再大点,从 产品的愿景 讲起...

打住,先不用考虑这么多,不然你的产品可能就只能存在于你的不停设想中了。

在资源有限,人力有限,投入有限的情况下,我们的产品目标就很明确了,它要解决哪些问题?或者它需要完成的功能!

比如说,我在做 文件管理器 的时候,MVP 的产品目标就很明确:实现手机和电脑之间的文件传输。

在完成了 MVP 需求之后,自然而然的带来了一些其他需求,有的来自我自己的产品计划,更多的来自于用户反馈:

  • 1.0.0 完成手机和电脑之间的传输
  • 1.1.0 实现图片、视频、音频文件的预览或者播放
  • 1.2.0 实现文件分组、移动、删除、压缩、分享功能
  • 1.3.0 优化播放器
  • 1.4.0 完成安全验证功能:手势验证码、生物认证
  • 2.0.0 添加内购功能
  • 2.1.0 完成文件扫描功能
  • ....

原始文章配图 1

原始文章配图 2

明确一个目标,它不需要很大,但可以实施,一次聚焦一个点,错了也先坚持下去(不做完你怎么知道是错的呢 ◔ ‸◔?),把它完成,然后复盘。

2、产品原型

在上篇文章中,我有提到自己其实尝试了很多原型设计工具,最后结论是 设计原型的时间都足够自己使用 xib 将页面搭建完成了。

在这里推翻一下自己 ,,Ծ‸Ծ,,

在做个人工具类 App,且毫无后续规划,只想着将其完成上线时,确实会带来这种想法。

随着产品的迭代,这种毫无原型规划,做一步考虑一步的处理方式,会给自己未来的开发造成很大的困扰。设计原型的过程其实是梳理产品逻辑的过程。

推荐几款 原型设计工具,我目前常用的可能就是 墨刀 了。

3、项目管理

在经历了独立的 iOS App 开发上架之后,我发现了一个很严重的问题。就是 毫无项目管理概念,有时间了做一下,想起来了做一下,偷懒了就不做了。

因为是自己的产品,自己设计,自己开发,且 MVP 版本大概率没有付费用户,也就没有给用户负责的心态。

这其实会严重阻碍项目进度,长期的无计划开发,还会造成项目流产。

在公司,经历了几年的迭代管理,发现使用项目管理工具进行个人项目的管理还是行之有效的。当我们有了明确的产品目标,有了对应逻辑自洽的原型,进而将任务进行拆解,就顺理成章了。

这里我用的是 coding.net 来进行项目管理,同时它也可以用来做代码托管。

原始文章配图 3

将任务项按照小时的粒度拆分,一方面方便任务管理,另一方面也方便测试 case 的编写。在正式编码前,我目前的习惯是先将测试 case 写完,这很有必要。

原型是对产品逻辑的梳理,测试 case 则是对研发细节的梳理,完整的测试 case 可以引导我们完成正确的业务逻辑 ✅,也能避免很多业务错误 ❌。

4、技术选型

好了,到目前为止,我们做的都是一些准备工作,仍然没有进入到开发中。很关键的问题在于,开发只有自己,要完成文章开头的目标:公众号、小程序 + App 完整产品生态。

我们需要同时具备小程序、iOS 开发、Android 开发技能。编程语言的上手难度不高,问题在于同样的业务,需要三次开发成本。这显然不太现实。

通常情况下,我们可能会选用 web 来实现多平台的使用体验,甚至于抛弃 App,只做公众号 + 小程序生态。在产品初期,产品需求快速验证的情况下,这种方式也是非常可取的一种方案。

其实,稍微搜索一下就会发现,市面上还是有挺多跨平台技术实现的。要做到 App + 小程序,三端一套代码,可以用 Uni-App 来实现。它使用的是 Vue.js 前端框架,iOS 和 Android 则借助了 Weex 实现。

用于做一些个人产品,或者小型商业化产品足够了。

5、数据管理

小程序 + App 的实现方案解决了之后,还有另外一个关键问题,数据存哪?

如果只是一个工具类产品,那么数据存在 App 本地即可。但我们的目标是一个具备完善用户体系的信息平台,甚至于较为复杂的用户 UGC 社区怎么办呢?

Uni-App 提供了自己的 uniCloud 服务,使用 js 即可完成服务器开发工作,小程序和 App 可以免域名使用服务器。

在这里,我选用了另外一种做法,将数据托管到 serverless 平台 LeanCloud,小程序和 App 通过 LeanCloud 的 js sdk 访问托管数据库。

其开发版可支撑 3 万次 / 天的免费 Api 访问,同时也提供短信服务。可以顺利完成用户体系建设、用户数据上传、平台数据的拉取。

当超过开发版的访问次数之后,说明你的产品也有了一定规模的用户量,相信这时候,流量带来的收入也足够你开通按量付费的商用版了。

数据来源之骚操作

如果你想做一个天气 App,或者咨询类 App,没有天气和资讯类数据怎么办呢?

国内有很多 Api 市场平台,比如:

阿里云 Api 市场

腾讯云 Api 市场

百度云 Api 商城

聚合数据

EastApi

等等

这些市场一方面提供了收费 Api 服务,另一方面也提供免费的 Api。

  • 如果你的产品有很好的流量变现方式,可以考虑使用收费 Api。

  • 如果没有,可以考虑白嫖。但 100 次的试用,测试阶段就很快消耗完了。怎么办呢?

这里就可以将 serverless 数据库托管平台 leancloud 和 Api 商城结合起来使用,以每日天气为例,如果 serverless 数据库托管平台没有查询到数据,则可以请求 Api 商城,之后将数据存入到数据库托管平台。

可是,100 次还是不足以覆盖所有城市怎么办呢?发挥白嫖精神,多申请几个平台吧。

6、上线运营

至此,我们搞定了小程序、App 以及 Server 的开发工作。上线怎么办呢?

小程序比较好说,微信公众平台 按照引导一步步申请小程序即可。

iOS 上架需要一个付费的开发者账号,这是一个门槛,长期运营的话,还是建议在苹果开发者官网申请一个账号,现在申请比较简单,苹果手机下载 Developer App 就可以付费了。

Android 上架则需要软件著作权了,正常申请可能需要 1-2 两个月,也可以付费找三方中介完成。

继续发挥白嫖精神,App 和 小程序配置的一些运营位,图片或者音视频资源存放在什么地方呢?

公众号媒体资料库可以解决这个问题。将图片和音视频资源存到公众号后,获取原链接,App 和 小程序即可访问了。

7、获取收益

较为简单的流量变现方式就是 广告 了。

可现在各平台对于流量主的接入要求越来越高,个人开发者基本很难完成广告接入。

  • Uni-App 提供了一键接入功能,具体可以参考 文档。

  • 公众号积累粉丝后,也可以开通文章内广告位。

  • 小程序达成 1000 个 UV 访问后,可开通流量主权限。

8、小结

至此我们就完成了文章开头介绍的 公众号、小程序 + App 完整产品生态。

按照以上步骤,我也完成了三个产品的操作,可以扫码体验下:

原始文章配图 4