人學習手機 App 開發(fā),一開始總要選擇一條學習路徑。
如果你熟悉 Java 語言,可以學習安卓開發(fā);如果熟悉腳本語言(比如 Python 或 Ruby),可以學習 Swift 語言,進行 iOS 開發(fā);如果像我一樣,比較熟悉 Web 網(wǎng)頁技術(shù),那么 H5 開發(fā)是最容易上手的。
這個系列教程的第一篇,已經(jīng)介紹過了手機 App 的種類[1]。所謂的 H5 頁面,其實就是混合 App 的前端,外面是一個原生的殼,里面是 Web 網(wǎng)頁。本文緊接上一篇,介紹手機 App 開發(fā)的技術(shù)棧,尤其是跟 H5 開發(fā)相關(guān)的技術(shù)。
本文由國內(nèi)最大的在線教育平臺之一“騰訊課堂”[2]贊助。他們現(xiàn)在啟動了“騰訊課堂101計劃”[3],推廣優(yōu)質(zhì)課程資源。希望學習和提高手機 App 開發(fā)技術(shù)的朋友,可以留意一下本文結(jié)尾的安卓課程信息。
手機 App 的技術(shù)棧可以分成三類。
(1)原生 App 技術(shù)棧(native technology stack)
原生技術(shù)棧指的是,只能用于特定手機平臺的開發(fā)技術(shù)。比如,安卓平臺的 Java 技術(shù)棧,iOS 平臺的 Object-C 技術(shù)棧或 Swift 技術(shù)棧。
這種技術(shù)棧只能用在一個平臺,不能跨平臺。
(2)混合 App 技術(shù)棧(hybrid technology stack)
混合技術(shù)棧指的是開發(fā)混合 App 的技術(shù),也就是把 Web 網(wǎng)頁放到特定的容器中,然后再打包成各個平臺的原生 App。所以,混合技術(shù)棧其實是 Web 技術(shù)棧 + 容器技術(shù)棧,典型代表是 PhoneGap、Cordova、Ionic 等框架。
如果已經(jīng)掌握了 Web 技術(shù),這個技術(shù)棧就主要學習容器提供的 API Bridge,網(wǎng)頁通過它們?nèi)フ{(diào)用底層硬件的 API。
(3)跨平臺 App 技術(shù)棧(cross-platform technology stack)
跨平臺技術(shù)棧指的是使用一種技術(shù),同時支持多個手機平臺。它與混合技術(shù)棧的區(qū)別是,不使用 Web 技術(shù),即它的頁面不是 HTML5 頁面,而是使用自己的語法寫的 UI 層,然后編譯成各平臺的原生 App。
這個技術(shù)棧就是純粹的容器技術(shù)棧,React Native、Xamarin、Flutter 都屬于這一類。學習時,除了學習容器的 API Bridge,還要學習容器提供的 UI 層,即怎么寫頁面。
(4)小結(jié)
H5 開發(fā)主要用在混合技術(shù)棧。但是,跨平臺技術(shù)棧的某些容器也會用到(比如 React Native),因為它們的 UI 層借鑒了 Web 模型。
另外,混合技術(shù)棧和跨平臺技術(shù)棧的基礎,都是原生技術(shù)棧,因為最終都要編譯成原生App。所以,不管使用哪一種技術(shù)棧,多多少少要了解一些各平臺的原生技術(shù)。
下面就依次介紹上面三類技術(shù)棧,每個技術(shù)棧都會給出一個最簡單的例子:加載網(wǎng)頁。通過各種技術(shù)棧加載網(wǎng)頁的不同做法,幫助大家理解它們的特點,對 App 的技術(shù)實現(xiàn)有一個總體的認識。
講解具體的技術(shù)棧之前,大家需要知道,不管什么技術(shù),最終在 App 里面顯示網(wǎng)頁,一定需要一個網(wǎng)頁引擎,這樣才能解析網(wǎng)頁。
通常情況下,App 內(nèi)部會使用 WebView 控件作為網(wǎng)頁引擎。這是系統(tǒng)自帶的控件,專門用來顯示網(wǎng)頁。應用程序的界面,只要放上 WebView,就好像內(nèi)嵌了瀏覽器窗口,可以顯示網(wǎng)頁。
不同的 App 技術(shù)棧要顯示網(wǎng)頁,區(qū)別僅僅在于怎么處理 WebView 這個原生控件。
?原生技術(shù)棧:需要開發(fā)者自己把 WebView 控件放到頁面上。?混合技術(shù)棧:頁面本身就是網(wǎng)頁,默認在 WebView 中顯示。?跨平臺技術(shù)棧:提供一個 WebView 的語法,編譯的時候?qū)⑵鋼Q成原生的 WebView。
注意,不同系統(tǒng)的 WebView 控件名稱不一樣,安卓系統(tǒng)就叫 WebView,iOS 系統(tǒng)有較老的 UIWebView,也有較新的 WKWebView,作用都是一樣的,差異在于功能的強弱。
原生技術(shù)棧分成 iOS 和安卓兩個平臺。
簡單說,iOS 的原生技術(shù)棧就是使用 Object-C 語言或 Swift 語言,在 Xcode 開發(fā)環(huán)境中編程。安卓的原生技術(shù)棧,則是使用 Java 語言或 Kotlin 語言,開發(fā)環(huán)境是 Android Studio。
下面就來看看,它們怎么加載網(wǎng)頁。
iOS 開發(fā)需要安裝 Xcode。它是一種集成開發(fā)環(huán)境(IDE),也是蘋果公司指定的 iOS 官方開發(fā)工具,所有蘋果手機的 App 都由它打包生成。
它可以在 Mac 電腦上通過應用商店免費安裝。注意,Xcode 只支持 Mac 系統(tǒng),不支持其他系統(tǒng)。
安裝完成后,打開新建一個項目,類型是單視圖 App,然后系統(tǒng)會詢問一些項目參數(shù)和儲存位置,這里就不詳細說明了。
然后,就進入了開發(fā)環(huán)境。
左側(cè)的目錄樹里面,找到ViewController.swifter
文件,它負責視圖邏輯。按照官方文檔[4],填入下面的代碼。
上面代碼的意思是,啟動 App 加載視圖的時候(loadView()
),新建一個 WebView 控件的實例。視圖加載成功后(viewDidLoad()
),WebView 再去加載外部網(wǎng)頁(紅框部分)。
然后,就可以查看代碼運行結(jié)果。點擊工具欄的運行按鈕,Xcode 就會彈出一個 iPhone 模擬器,里面就是當前代碼的運行結(jié)果。
如果一切正常,就可以讓 Xcode 對源碼打包,生成 App 的二進制安裝文件。
安卓的官方開發(fā)工具是 Android Studio,可以去官網(wǎng)[5]下載。
安裝完成后,打開新建一個項目,類型是“Empty Activity”。
Android Studio 會詢問項目參數(shù),包括項目名稱、開發(fā)語言(Java)等,然后就進入了開發(fā)環(huán)境。因為它是基于 Java IDE 修改的,懂 Java 的朋友應該對這個界面比較熟悉。
按照網(wǎng)上的這篇教程[6],接下來需要修改三個文件,其中最主要的是把MainActivity.java
文件改成下面這樣。
上面紅框處的代碼,就是在頁面上添加并設置 WebView 實例,指定生成視圖的時候(onCreate()
),WebView 實例去加載外部網(wǎng)頁。
運行代碼之前,Android Studio 要求必須連接真機,或安裝安卓模擬器。完成以后后,在工具欄上點擊運行按鈕,就可以運行代碼查看效果了。
如果一切正常,就可以讓 Android Studio 打包,生成 App 的二進制安裝文件。
上面的原生技術(shù)棧需要自己新建 WebView 實例,相比之下,混合技術(shù)棧就簡單多了。因為頁面就是網(wǎng)頁,所以容器已經(jīng)設置好了 WebView,開發(fā)者直接寫頁面即可。
混合技術(shù)棧的各種容器框架之中,歷史最悠久是 PhoneGap[7],誕生于2009年。后來在2011年被 Adobe 公司收購,改名為 Adobe PhoneGap。
Adobe 公司將 PhoneGap 的核心代碼,后來都捐給了 Apache 基金會,作為一個全新的開源項目,名為 Apache Cordova[8]。
PhoneGap 和 Cordova 現(xiàn)在是兩個獨立發(fā)展的開源項目,但是彼此有密切的關(guān)系,可以簡單理解成 Cordova 是 PhoneGap 的內(nèi)核,PhoneGap 是 Cordova 的發(fā)行版。
后來,其他人也開始基于 Cordova 封裝自己的框架,所以市場上有許多基于 Cordova 的開源框架,比較著名的有 Ionic[9]、Monaca[10]、Framework7[11]等。
所有這些框架的共同點,都是使用 Web 技術(shù)(HTML5 + CSS + JavaScript)開發(fā)頁面,再由框架分別打包成 iOS 和安卓的 App 安裝包。它們的優(yōu)點是開發(fā)簡單、周期短、成本低,缺點是功能和性能都很有限。
基于 Cordova 的框架,用法都大同小異,下面就以 Ionic 為例,演示如何加載外部網(wǎng)頁。
首先,根據(jù)官方文檔[12],生成項目的腳手架。
$ npm install -g ionic@latest
$ ionic start myApp blank --type=react
$ cd myApp
接著打開src/pages/Home.tsx
文件,插入<iframe>
標簽即可。
上面代碼中,由于頁面本身就是網(wǎng)頁,所以可以直接用<iframe>
標簽插入外部網(wǎng)頁。
然后,在本機起一個 Web 服務,看看 Demo 的效果。
$ ionic serve
上面命令會自動打開瀏覽器窗口,訪問本機的8100端口,在瀏覽器中顯示網(wǎng)頁效果。
如果一切正常,在命令行窗口按 Ctrl+c,退出服務。編譯成 App 安裝包的方法可以參考官方文檔[13]。
上面的混合技術(shù)棧使用 HTML 語言編寫頁面,再用 WebView 控件加載頁面,所以只寫一次頁面,就能支持多個平臺。跨平臺技術(shù)棧也能做到多平臺支持,但是原理完全不同。
跨平臺技術(shù)棧的框架,都是使用自己的語法編寫頁面,不使用 Web 技術(shù),編譯的時候再將其轉(zhuǎn)為原生控件,或者使用自己的底層控件,生成原生 App。這樣就完全解決了 Web 頁面性能不佳的問題。下面介紹三個這樣的框架。
?React Native: 使用 JavaScipt 語言編寫頁面?Xamarin:使用 C# 語言編寫頁面?Flutter:使用 Dart 語言編寫頁面
(1)原理
2013年, Facebook 公司發(fā)布了 React 框架。這個框架是為網(wǎng)頁開發(fā)設計的,核心思想是在網(wǎng)頁之上,建立一個 UI 的抽象層,所有數(shù)據(jù)操作都在這個抽象層完成(即在內(nèi)存里面完成),然后再渲染成網(wǎng)頁的 DOM 結(jié)構(gòu),這樣就提升了性能。
很快,工程師們就意識到了,UI 抽象層本質(zhì)上是一種數(shù)據(jù)結(jié)構(gòu),與底層設備無關(guān),不僅可以渲染成網(wǎng)頁,也可以渲染成手機的原生頁面。這樣的話,只要寫一次 React 頁面,就能分別編譯成 iOS 和安卓的原生 App。這就是 React Native 項目的由來。
注意,React Native 雖然也使用 JavaScript 語言,并且寫法看上去像 Web 頁面,但其實所有控件都是自己定義的,編譯時再一一翻譯為對應的原生控件。舉例來說,React Native 的文本渲染控件是<Text>
,翻譯成 iOS 控件為UIView
,翻譯成安卓控件為TextView
。這種做即保證了性能,又做到了跨平臺支持,所以一誕生就引起開發(fā)者的關(guān)注,成了熱門技術(shù)。
還有一個 NativeScript[14]框架,跟 React Native 很像,也是使用 JavaScript 語言,然后編譯成原生控件。不過,它的開發(fā)模型是基于 Angular.js,而不是 React。
(2)實例
下面就是 React Native 加載外部網(wǎng)頁的實例。為了方便使用,官方團隊提供了一個封裝好的工具集,叫做 Expo[15]。第一步,在手機安裝 Expo 的 App 客戶端(App Store[16],Google Play[17])。
然后,在命令行安裝腳手架工具expo-cli
,新建一個示意項目。
$ npm install -g expo-cli
$ expo init rnDemo
新建項目時,會要求你選擇項目模板,可以選minimum
模板。然后,還會要求你填寫項目描述displayName
,這個可以隨便寫。
然后,安裝 React Native 自己的 WebView 控件。
$ cd rnDemo
$ npm install --save react-native-webview
接著,打開主頁面的腳本文件App.js
,將其改成下面的代碼。
上面代碼中,React Native 自身的WebView
控件,編譯時會分別轉(zhuǎn)為 iOS 和安卓的原生 WebView 控件。
接下來,預覽頁面效果。可以先把它編譯成 Web 版,在瀏覽器預覽,這樣比較快,立刻就能看到效果。
$ npm run web
運行上面的命令,命令行會出現(xiàn)一個二維碼。
這時可以打開手機端的 Expo 客戶端,掃描這個二維碼,就會顯示 App 的頁面。注意,計算機和手機必須在同一個局域網(wǎng)。
(3)React Native 的問題
React Native 的想法雖然很美好,但是實際開發(fā)中出現(xiàn)了各種各樣的問題。
最主要的一個問題是, UI 抽象層翻譯出來的 iOS 和安卓原生頁面,做不到完全一致,尤其是復雜頁面,樣式或功能存在差異。編譯出來兩個平臺的原生 App 往往是一個正常,另一個會出現(xiàn)各種奇怪的小毛病。React Native 的底層還是沒有做到無縫適配,它至今沒有發(fā)布 1.0 版(2019年底是 0.61 版),這多多少少也說明了一些問題。
如果你想用 React Native 做到 iOS 和安卓體驗一致,并且充分發(fā)揮原生控件的功能,就需要同時熟悉 React Native、iOS、安卓三個平臺,這對開發(fā)者的要求實在太高了。Airbnb 公司在使用 React Native 兩年后,宣布放棄,改用原生技術(shù)棧。他們寫了一篇很長的文章[18],解釋為什么這么做,React Native 到底有什么問題,大家可以參考那篇文章。
Xamarin 是微軟公司的跨平臺 App 開發(fā)框架,原理跟 React Native 很相似,只不過它的語言是 C#。
它的使用需要 Visual Studio,這里就不舉例了。根據(jù)官方文檔[19],WebView 的用法如下。
上面代碼中,首先新建了一個 WebView 控件的實例,然后把這個實例放到布局上,跟原生 App 的語法很像。
Flutter[20]是谷歌公司最新的跨平臺開發(fā)框架。它為了解決 React Native 的平臺差異問題,采用了一個完全不同的方案。
它自己實現(xiàn)了一套控件。打包的時候,會把這套控件打包進每一個 App,因此不存在調(diào)用原生控件的問題。不管什么平臺,都調(diào)用內(nèi)嵌的自己那套控件,就能做到 iOS 和安卓體驗完全一致。
Flutter 歷史還不長,應用還不廣泛,API 也沒穩(wěn)定下來。但是很值得關(guān)注。
加載外部網(wǎng)頁的實例,可以參考 Flutter 官方團隊的這篇文章[21]。核心代碼如下:
上面代碼使用的是 Dart 語言。它是 Flutter 的官方語言,接近 JavaScript 語法,但是多了靜態(tài)類型支持。
通過上面的介紹,希望大家已經(jīng)了解了各種技術(shù)棧的特點。
(1)原生技術(shù)棧的技能和體驗最好,對于復雜的大型 App,如果條件允許,應該采用這種方式開發(fā)。
(2)混合技術(shù)棧的成本低,靈活性好,對性能要求不高的簡單 App,尤其是純展示性的頁面,可以采用這種方式開發(fā)。
(3)跨平臺技術(shù)棧適用于,存在外部或內(nèi)部條件的限制,只有一個團隊開發(fā)跨平臺 App 的情況。
(正文完)
手機 App 的 UI(用戶界面),往往是 App 成功的關(guān)鍵因素:產(chǎn)品的外觀是否漂亮,點擊和滑動是否流暢,意圖是否清晰,都會影響到用戶的留存率。一個好的 UI 不僅體現(xiàn)了產(chǎn)品經(jīng)理和開發(fā)者的素質(zhì),還可以有效降低拉新成本。
一般的開發(fā)者接到產(chǎn)品的 UI 設計方案之后,可能就會去網(wǎng)上找類似的效果,看看有沒有開源代碼。但是,優(yōu)秀的開發(fā)者會努力思考,如何通過完全自定義來實現(xiàn)這個效果,做到功能和性能的最佳狀態(tài)。
這就要求開發(fā)者具有實現(xiàn)高級 UI 的開發(fā)能力,理解安卓 UI 的底層實現(xiàn)原理,比如自定義 View 的渲染流程(onMeasure
->onLayout
->onDraw
),以及交互設計(touch
事件)。
怎樣才能高效地學習安卓高級 UI 開發(fā),早日進階成為高級安卓工程師呢?這里介紹享學課堂的一門課程 《高級安卓 UI ——自定義 ViewGroup 與 UI 性能優(yōu)化》,它帶大家一行一行代碼去實現(xiàn)一個京東自定義ViewGroup
,研究系統(tǒng)的FrameLayout
與ViewPager
的源碼,最后通過閱讀源碼,分析ViewPager
設計過程中的顯示問題和性能問題。下圖是課程介紹(點擊看大圖)。
這個課程是直播課程,在線實時答疑,特別邀請了 Alvin 老師(前三星/小米高級研發(fā)經(jīng)理)主講,只需要0.1元就能參與。聽課之后覺得滿意,還可以學習其他 Android 高級進階的實戰(zhàn)課程。
(完)
[1]
手機 App 的種類:http://www.ruanyifeng.com/blog/2019/12/hybrid-app-concepts.html
[2]
“騰訊課堂”:https://ke.qq.com/
[3]
“騰訊課堂101計劃”:https://edu.qq.com/a/20190119/005414.htm
[4]
官方文檔:https://developer.apple.com/documentation/webkit/wkwebview
[5]
官網(wǎng):https://developer.android.com/studio
[6]
這篇教程:https://codingislove.com/android-web-view/
[7]
PhoneGap:https://phonegap.com/
[8]
Apache Cordova:https://cordova.apache.org/
[9]
Ionic:https://ionicframework.com/
[10]
Monaca:https://monaca.io/
[11]
Framework7:https://framework7.io/
[12]
官方文檔:https://ionicframework.com/docs/react/your-first-app
[13]
官方文檔:https://ionicframework.com/docs/react/your-first-app#build-a-native-app
[14]
NativeScript:https://www.nativescript.org/
[15]
Expo:https://expo.io/
[16]
App Store:https://itunes.apple.com/app/apple-store/id982107779
[17]
Google Play:https://play.google.com/store/apps/details?id=host.exp.exponent
[18]
很長的文章:https://medium.com/airbnb-engineering/sunsetting-react-native-1868ba28e30a
[19]
官方文檔:https://docs.microsoft.com/en-us/dotnet/api/xamarin.forms.webview?view=xamarin-forms
[20]
Flutter:https://flutter.dev/
[21]
這篇文章:https://medium.com/flutter/the-power-of-webviews-in-flutter-a56234b57df2
者:日照工校/徐鵬
手機瀏覽器能用來干什么?看資訊、看圖片、看小說、看視頻等等。作為上網(wǎng)必備工具,手機瀏覽器對于網(wǎng)絡體驗的影響不可忽視。隨著網(wǎng)絡的快速發(fā)展,大家對于瀏覽器的要求也越來越高,比如支持HTML5頁面版。由于手機瀏覽器的內(nèi)核和性能存在差異,造成不同的HTML5頁面瀏覽有不同的體驗。
近日無意中看到一個款800手機瀏覽器,在體驗過程中,發(fā)現(xiàn)不論是在游戲體驗還是軟件特效上,都完全體現(xiàn)HTML5效果,為了讓大家有更直觀的感受,就先試用了一番。
小知識:
HTML5名詞解釋:原生支持多媒體功能,不再依賴瀏覽器插件(例如 Adobe Flash player, Windows Media Player),便可實現(xiàn)跨平臺在線影音播放。同時 HTML5 還可以讓網(wǎng)頁調(diào)用手機的應用數(shù)據(jù)從而實現(xiàn)很酷的功能。另外,HTML5 新增了離線存儲,一次聯(lián)網(wǎng)加載資源,長久離線訪問。廣義的 HTML5 技術(shù)還包括 CSS3,JavaScript 以及支持 SVG 等。
在試用過程中,首先引起筆者注意的,還是800手機瀏覽器的界面化,所謂細節(jié)決定產(chǎn)品的成敗,先來看看它的到底是什么樣子。
800手機瀏覽器啟動后,從整體上看到的,就是集成了常用的搜索引擎和常用網(wǎng)站,而且還可以添加新的常用頁面。
跑分測試
800手機瀏覽器主要是面向智能手機的安卓瀏覽器,全面支持 HTML5。但是如果要成為一款真正的支持HTML5的手機瀏覽器,僅有支持還是不夠的,更多的需要完全與HTML5的融合,還是先看看它的跑分結(jié)果吧:
注:測試網(wǎng)站Html5test.com,它是一個非常具有權(quán)威性的測試HTML5性能的網(wǎng)站,無論是PC端還是手機端的瀏覽器,都能夠快速檢測出當前瀏覽器對HTML5頁面各項元素對于HMTL5的支持情況。
在HTML5 測試中,800手機瀏覽器得分高達驚人466分,800手機瀏覽器的得分完全可以媲美PC端瀏覽器的表現(xiàn),這也大大提升了它對HTML5特效效果以及游戲的支持。
跑分測試結(jié)果已經(jīng)可以說明一個很重要的方面,當然除這些數(shù)據(jù)外,本身具有HTML5的特性也是非常重要的,800手機瀏覽器還給我們很多HTML5體驗,展現(xiàn)了一種對于HMTL5的一種融合以及更深的理解。
視頻播放
提起HTML5,很多人都會想到視頻播放。因為它完全不需要任何的插件支持,只要是瀏覽器支持即可,目前主流的視頻網(wǎng)站都早已經(jīng)實現(xiàn),他們完全支持HTML5的視頻直接播放。目前雖然還支持Flash插件,但是它會大大的增加電量消耗和性能的損耗,同時Adobe公司也宣布會停止Flash在手機端的更新。
現(xiàn)在,來看看800手機瀏覽器對于視頻的表現(xiàn):
HTML5視頻體驗網(wǎng)站截圖
逼真的靈動效果,完全沒有卡頓的現(xiàn)象
800手機瀏覽器在播放過程中沒有出現(xiàn)視頻失真或者不流暢的情況。
CCS3特性
除此之外,800手機瀏覽器還展示了幾種HTML5獨有特性,比較代表性的有CSS特性等。
CCS3是CSS語言的新版,也是一個全新時代的技術(shù),它可以給你的圖片添加圓角,可以讓你的圖片具有陰影特效,還可以打造一個矢量圖的效果。
游戲體驗
800手機瀏覽器不僅僅帶來了一些軟件上的體驗,還給我們的帶來了很多游戲上的體驗,來看看800手機瀏覽器的游戲效果如何吧。
這款游戲?qū)儆谝粋€網(wǎng)絡游戲,支持觸摸反饋,在試玩過程中,游戲的流暢度和直接下載游戲沒有太大的差別。
總結(jié):
800手機瀏覽器在HMTL5上表現(xiàn)無懈可擊,給我留下很深刻的印象。它不僅僅表現(xiàn)在跑分測試數(shù)據(jù)上,更多的是表現(xiàn)在對于HTML5的融合上,是一款真正的HTML5瀏覽器。
幾天,大家都在玩一款《神經(jīng)貓》的游戲,又火了,距離臉萌的刷屏還不到一個月。從“瘋狂猜圖”到“臉萌”,從“flybird”到“特斯拉”和“維多利亞的秘密”,再到“神經(jīng)貓”,朋友圈的力量開始展現(xiàn)。
作為公關(guān)人,如果你還在盯著某某報紙發(fā)一個豆腐塊新聞,顯然很難做出成績。大叔發(fā)現(xiàn),不少公司的公關(guān)品牌團隊里已經(jīng)開始自己招HTML5的開發(fā)人員或外聘團隊。
一號店此前在朋友圈做的“九宮格”和“索吻游戲”也是找了上海的一個開發(fā)團隊,總費用接近20萬。寶馬搖盒子項目的開發(fā)費用高達60萬,制作方來自一個小團隊,10天就超過1100萬的參與量。
一位專門做頁面手機游戲的創(chuàng)業(yè)公司負責人告訴大叔,他之前制作電子賀卡,發(fā)現(xiàn)基于HTML5頁面的手機游戲在朋友圈十分受歡迎,開始轉(zhuǎn)型專做頁面手機游戲,其在世界杯開發(fā)的一款射門游戲的PV輕松超過百萬。
這位老總介紹,一個游戲的開發(fā)費用對外報價至少在10萬,而像維多利亞秘密和特斯拉那種翻頁瀏覽的開發(fā)費用則低不少,原因是前者有深度交互,而后者只是一個瀏覽功能,美工更為重要。
神經(jīng)貓的出現(xiàn),似乎打破了上面這些所謂的高門檻設置。這一款使用Egret引擎開發(fā)的Html5游戲,由南京一名美術(shù)和一名程序使用1.5天開發(fā)完成。游戲在7月22日下午兩點上線,在微信朋友圈迅速引爆,3天時間內(nèi)游戲訪問量超過一個億。
其實,“神經(jīng)貓”的創(chuàng)意也是來自抄襲,玩法來自在2007年日本一款名為“黑貓”的游戲,形象來自日本的漫畫《全是貓》。為什么會火爆呢?基本符合以上所有應用的特點,好玩簡單鼓勵分享。
如果你注意自己的朋友圈,也許經(jīng)常能夠看到一些使用Html5制作的小游戲的微信分享,比如此前大熱的《2048》《一個都不能死》、《別踩白塊兒》等等的各種版。借助微信的快速傳播優(yōu)勢,Html5游戲開始顯現(xiàn)出另一種生命活力,也開始成為企業(yè)植入品牌的另一條路,畢竟大家對心靈雞湯早就膩煩了,純文字的內(nèi)容,更適合微博,而不是朋友圈。
說了這么多,大叔總結(jié)一下,利用微信朋友圈進行傳播的Html5小游戲正在成為典型現(xiàn)象,目前比較成功的是個人開發(fā)者制作的小游戲,利用話題性和病毒性進行傳播,這是公關(guān)和品牌介入的最好時機。
最后借用一個營銷大師的話,大家都喜歡可口可樂,但有多少人會去關(guān)注可口可樂的官方微博或微信呢?大叔再加一句,如果可口可樂邀請你玩?zhèn)€小游戲呢?
*請認真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。