图片类应用路在何方?

当 Instagram被天价收购时,人们似乎以为读图时代已经结束,再也不会有超越 Instagram 成就的机会出现。但随着 Flickr 对移动端的重视、Google 收购 Snapseed 并将其免费、Twitter 移动应用增加滤镜功能,以及一个又一个新兴图片类工具或社区的崛起,读图时代也许才刚刚开始。毕竟,Instagram 只是验证了图片分享是一种强烈需求,但如何在此基础上创造出可以持续发展的商业模式却依然没有答案。

我们可以把目前市面上的图片类产品的模式分为涉及图片美化修改的工具和交流分享的社区两部分。大部分产品要么是两者兼有,要么只偏向其一。我们可以想到的盈利模式也无非“免费+广告”、应用内收费或者订阅式服务。软件产品本身的零边际成本的特点,加上移动应用商店又降低了产品的营销支出,不需过多的运营成本使低价竞争成为可能。况且大批优秀的程序员和研发团队的出现加快了技术和创意的交流,使得美化图片的技术优势并不突出,用户也不可能轻易感知美化效果的好坏。在现在激烈的竞争环境下,图片类应用该如何寻得出路?

a1

做商品,卖工具

如果对自己的技术优势足够自信,对应用一次性收费是最直接有效的。Camera + 无疑就是这样一款优秀的产品,已经确立了自己的品牌优势。新的同类型图片美化工具即使有更出色的技术,也很能撼动其已经积累的口碑。况且像 Adobe 这样有资金和技术优势的大公司,也会通过推出 Photoshop Express 移动版这样的免费品来强化已有的品牌地位。同时,还有一些像美图秀秀、Camera360 以及 POCO 相机,甚至功能更加强大的如 Pixlr Express、Snapseed 这类免费品。别忘了,iOS 和 Android 自带应用也具备基本的图片美化功能。

从这一点我们也可以看出,在图片修改类付费应用已经饱和的情况下,还有大量优秀的免费品竞争,一次性收费并不利于新的图片修改工具的发展。事实上,根据 AppsFire 公布了 2012 年 App Store 信息图,2012 年发布的所有 App 中,只有 66% 是免费应用。

免费是一种能使自己的产品在前辈的声誉中快速脱颖而出的有效促销手段。免费的产品降低了用户接触成本,使用户更乐意尝试新事物。但免费不可能成为一种盈利模式,因为它根本就无法保证产品能盈利。免费的商业逻辑在于降低用户的接触成本,从而快速捕获大批用户群,从中寻找可能的付费对象。所以由此延伸出内置广告和应用内付费两种流行模式。但作为一款简单的工具类应用,内置广告无疑会降低用户体验。而应用内付费,无论是特殊滤镜收费还是购买什么美化包,都一样会面临残酷的竞争。如果不针对未被开发的新需求,这种卖工具的方式已经不再适合新兴的产品,图片类应用需要寻找新的商业模式。

a2

 

做服务,盈利手段多样化

Snapseed 被 Google 收购后立即变成了免费品,除了 Google 有着雄厚的资金优势外,Snapseed 启动画面出现的 Google + 的标识也表明了这款免费品是为 Google 的社交平台服务。将移动端的图片修改工具以免费的形式作为吸引用户的促销手段,在此基础上打造平台服务,也是许多产品正在探索的思路。

社区是图片摄影的常规发展思路。社区的优势在于,用户长期沉侵其中造成巨大的迁移成本,使其很难使用其他同类产品。Flickr 由于在移动领域的缓慢,使 Instagram 顷刻间成为图片分享社区的新品牌。但 Flickr 毕竟作为老牌摄影爱好者的聚集地,手握大批忠实的摄影师,也不是没有反击能力。新上任的梅姐已使 Yahoo 重新重视 Flickr 移动版,其新 iPhone 版的改进也有望加大对 Instagram 的打击。Flickr 是典型的订阅付费,其盈利能力已获市场的认可。

国内的 POCO.cn 也是一个汇集摄影图片的社区。POCO 将“摄影”跟“生活”结合起来,宠物、美食、旅游、摄影服务,甚至电子杂志等等诸多门类构成了整个社区。POCO 是有着浓厚生活信息的分享社区。POCO 便依次建立了各种盈利方式。比如美食类餐饮广告,摄影服务收费等。与 Flickr 一样,POCO 移动端的各种相机应用也是吸引用户加入 POCO 社区的入口。

以上两个图片社区都是移动端提供免费图片美化工具,以巩固其网络社区的地位,从而提供各种不同的服务。图片存储服务的订阅收费是一种免费增值模式,它既具备免费品吸引用户的优势,也为付费用户提供其所需的服务。对服务收费和对商品收费的区别在服务是可以被长期感知的,更容易使消费者形成物有所值的感觉,且大量存储的数据也增加了迁移成本。Camare360 的云相册也透露其打算通过订阅存储空间收费的盈利意图。另外,Camera360 刚推出的SDK服务,也有 Aviary 的成功在先。而 POCO 以摄影图片为基础,向各种生活相关类别堆出各种服务也是一种商业模式的创新。它利用了社区的另一个特点,用户黏性强。一旦人们沉侵其中,很难愿意离开。社区的力量,连 Adobe 都不敢小视。后者最近收购设计社区 Behance 实现工具和社区的整合。

a3

玩花样,寻找别样需求

我们已经分析做一款收费的图片修改工具很难具备优势,但通过免费图片工具,走“拍照——美化——分享”的传统思路,即使最终建立了自己的平台,竞争也不会轻松。产品需要探索新的产品模式,识别未被感知的新需求。

像 Snapchat 这样规定图片显示时间的分享模式,或者啪啪这样加入声音来传播也是产品模式创新的案例。但毕竟这类比较“浅薄”的产品很难在今后找到合适的盈利模式。Instagram 在盈利上的困境也暴露了它“浅薄”的特性。Instagram 作为一个图片社区其实是不够的。它仅仅只是利用优秀的滤镜,通过标签、喜欢、评论构建了一个利于图片像 Twitter 的文字一样可以快速传播的模式。你甚至都无法在这款应用中找到作为一个社区应该有的热门标签、流行话题、热门用户的排行榜。你上传的图片必须被裁减,你也无法对自己的图片分类利于今后查看。所以说 Instagram 只是一款用图片交流的社交网络,而不是 Flickr 那样的摄影社区。“浅薄”品不仅可以被轻易模仿,而且还很难留住用户,因为它最多只算做一个特性(Feature)。对于微信或者 Path,图片的美化分享就是其主功能的一个特性。当 Instagram 的新隐私政策激怒了用户,用户可以轻易地离开。Twitter 和 Flickr 正在追赶 Instagram,Facebook 也推出自己的类 Snapchat 应用 Poke。配合他们已有的社交平台,“浅薄”品的先发优势也很快会被逆转。

同样是拍照滤镜加分享社区,EyeEm 加入“拍照任务”的模式成为盈利模式的新尝试。“拍照任务”会要求用户去拍摄一些特定主题的图片。目前 EyeEm 已经跟红牛和德国汉莎航空公司等数个品牌建立合作。“拍照任务”可以被视为一种新的营销活动,成为一些品牌和其忠实粉丝互动的新形式。利用图片进行营销活动是一种很直接的想法,但即使是 Pinterest 做得也不够好。

同样也是滤镜,来自西安的 Blux Camera 则可以分析环境、光线,识别拍摄主体,推荐最佳拍摄模式和滤镜效果。这是一款目前面向海外市场的收费应用。其优势在于解决了用户不知选着何种滤镜的困惑,进一步降低了拍照门槛,所以其付费是针对未被挖掘的的新需求。

a4

图片类应用如果单纯做工具,去发觉新的拍照需求,或者像 Line Camera 那样玩贴图,也可以为自己找到一席之地。而拓展到社区平台,除了免费增值外,数据挖掘也是一个可以探索的领域。Instagram 对其新隐私政策不满的回应,也透露其打算分析用户数据,识别出可以广告推广的图片的意图。图片类应用的盈利是一个持续探索的过程,但目前还不存在足以傲视天下的盈利模式。我们可以确信的是在群雄逐鹿中,各种探索和挖掘将会更有利于用户满足自身的需求。

原文地址:http://www.geekpark.net/read/view/168674

onInterceptTouchEvent和onTouchEvent

本帖记录onInterceptTouchEvent和onTouchEvent调用关系,即各种return true和return false的运行情况。

return true和return false,代表的是是否消费完该事件,也就是该事件是否会继续传递给下层或者上层组件继续处理。return true代表消费完不会继续传递,return false代表没有消费完将会继续传递。

如果没有onInterceptTouchEvent,只考虑onTouchEvent的话,比较容易分析和理解。假如有三层布局结构,linearLayout1,linearLayout2,textView,从前到后是包含的关系。那么下面分情况说明。
1.如果它们的onTouchEvent都返回false的话,DOWN事件会自上而下(textView位于最上层)依次传递,最终都没有消费完此事件,都只会进入onTouchEvent方法一次并且MotionEvent的action为MotionEvent.ACTION_DOWN,move和up等事件不会继续处理。
2.如果textView的onTouchEvent返回true,表示textView消费了此事件,不会传给父组件linearLayout2和linearLayout1了,并且还会继续处理move和up等事件。
3.linearLayout2和linearLayout1的onTouchEvent返回true和上面的情况一样,都不会继续传给父容器而且本身继续处理move和up等事件。
OK,这种情况还是比较容易理解的。

下面加入onInterceptTouchEvent。
onInterceptTouchEvent只有ViewGroup才会有,用于在进入自身onTouchEvent或者子组件onTouchEvent之前处理事件。注意onTouch是自上而下传递,而onInterceptTouch却是由下而上传递的。来了一个DOWN事件,首先进入的必然是最底层的viewGroup的onInterceptTouchEvent方法,然后根据return的值进入自身或者子组件的onTouch事件,当然如果子组件也是viewgroup的话,在进入子组件的onTouch之前也会进入子组件的onInterceptTouchEvent方法。
下面也分几种情况介绍:
1.当onInterceptTouchEvent返回false时,表示没有消费完此事件,会继续传递个子组件的onTouch继续处理。注意这种情况不会就不会传递给这个ViewGroup自身的onTouch事件处理了。这和onTouch如果返回false,后续的move、up等事件都不会继续处理了可以做同样理解。
2.当onInterceptTouchEvent返回true时,表示消费完此事件,或者说将在此组件上消费该事件。这种情况该事件会传递给ViewGroup自身的onTouch事件去处理,而不会传递给子组件的onTouch方法了。
由此可以总结,onInterceptTouchEvent返回值只是决定了是要把事件传递给自身的onTouch事件还是传递给子组件的onTouch事件。返回false表示没有消费完将传递个子组件的onTouch方法,返回true表示自身消费此事件,将传递给自身的onTouch方法而不会传递给子组件的onTouch方法了。