小程序通用能力,你一定用得上

楊小姐的feelstyle,搗鼓5個月小程序,良心總結,跨年之作hahaha~!

所謂小程序通用能力,就是如果你要做小程序,以下問題你通通都會遇到哦,我總結如下,讓大家少踩坑,如有寫得不當之處請指出。

設計指南

微信官方提供的小程序界面設計指南和建議,附psd和sketch組件庫下載。
官方文檔:https://developers.weixin.qq.com/miniprogram/design/index.html?t=18111920

登錄授權

什么是登錄授權:
確切的說是使用微信號登錄小程序,需要用戶手動點擊同意授權,即可使用微信號登錄,便利性在于不用注冊,一鍵登錄!
接口文檔:https://developers.weixin.qq.com/miniprogram/dev/api/wx.login.html

小程序登錄流程時序圖

授權后獲取的是微信什么信息?
獲取微信號、頭像、昵稱、性別、地區、綁定的手機號碼、openid、unionid。

怎么設計?
1、筆者的設計思路是:在需要獲取用戶信息的地方,如互動操作、表單交互、個人中心,而不是一打開小程序就讓授權,一打開就提示授權容易被用戶拒絕。這里需要特別強調常遺漏拒絕授權后的場景設計。可以參考「美團」系列小程序,都是在適當的時候提示授權。
2、但是筆者還是看見絕大多數小程序是在首次進入小程序就讓授權,如「步數寶」小程序授權,但是這個拒絕后是無法使用其它服務的。這種設計方式就是簡單粗暴,無腦設計,因為完全可以不用考慮拒絕后的場景設計。

步數寶小程序授權界面

「美篇」小程序也是首次登錄就讓授權,否則無法瀏覽任何界面信息,如下圖:

美篇小程序授權界面

可以不用微信號登錄嗎?
可以,除了使用微信號登錄外還可以使用手機號碼和驗證碼登錄,如美團小程序的登錄界面有兩種選擇:

美團小程序登錄頁

使用微信號登錄后可以退出登錄嗎?
1、大部分小程序都沒有設計退出登錄功能,理由可能就是不想讓用戶退出登錄,當用戶刪除小程序后需要重新登錄。
2、更甚有開發者這么設計,刪除后再打開不用重新授權,等于永遠都是登錄狀態,如「泰禾生活」小程序,感興趣的朋友可以去體會一下~!(ps:這是朋友公司的老板需求??)
3、當然也可以設計退出出口。

刪除小程序后用戶數據還在嗎?
1、如果用戶信息是存儲在微信緩存里,那么刪除小程序就沒有用戶數據了,筆者曾經玩一個切水果的小游戲,玩到300多關不小心刪除了小游戲,結果重新打開后發現數據沒了……所以刪除需謹慎,天黑路滑,你是猜不到偉大的開發者是怎么設計的。。
2、如果用戶信息是存儲在數據庫里,刪除后當然還在啦。

Openid和UnionID

什么是openid?
用戶的唯一標識,一個openid對應一個公眾號。

什么是unionid?
用戶的統一標識,同一用戶,對同一個微信開放平臺下的不同應用,unionid是相同的,即用戶帳號互通。
接口文檔:https://developers.weixin.qq.com/miniprogram/dev/api/uinionID.html

微信的用戶隱私策略:每個接入微信的應用(公眾號、APP)就像一個獨立的商場,用戶使用這些應用就像逛商場,商場用會員卡識別用戶,類似的,我們根據商場名字為每個用戶生成了一張專屬會員卡(openid),每張會員卡只能在對應的商場才能夠使用,你不能拿著沃爾瑪的會員卡去華潤萬家積分。這是一種安全的授權方式,如果沒有這個會員卡,直接暴露微信號,就相當于拿著身份證去逛商場,丟失一個會員卡號遠比丟失身份證號要安全。

那么問題來了,都是萬達集團,萬達大歌星與萬達商場希望做到會員卡通用。微信在這里做了一個打通機制,對于同一個企業,在用戶屬性里面加了一個企業屬性(UnionID),方便同一個企業在不同的產品中識別到同一個用戶。

這個機制伴隨著微信聯合登錄已經在微信開放平臺(open.weixin.qq.com)推出了。獲得了開放平臺認證的企業,可以綁定10個手機應用、10個網站、10個公眾號,他們對應的用戶信息也可以互聯互通。

強烈提示:對于開發團隊而言,在接入微信登錄之初,往往會忽視用戶的UnionID,只記錄了openid。這會導致后期賬號打通時候,需要用戶重新授權,運營成本增高,遇到此類問題的團隊不在少數。

獲取地理位置

獲取的是用戶的什么地理位置?
獲取用戶當前的微信地理位置、速度,調用此接口需要用戶授權。
接口文檔:https://developers.weixin.qq.com/miniprogram/dev/api/wx.getLocation.html

何時出現?
筆者的設計原則是:在需要獲取地理位置的頁面調用此接口,非首次進入就調用此接口。

小程序銷毀

微信主動銷毀
當小程序進入后臺,客戶端會維持一段時間的運行狀態,超過一定時間后(目前是5分鐘)會被微信主動銷毀。

自動銷毀

小程序緩存

什么是小程序緩存?
同瀏覽器緩存,保存在本地。

怎么清除緩存?
同一個小程序的開發版、體驗版、線上版的緩存是共用的,你需要同時刪除這三個版本的小程序,緩存才會被刪除。

不清除緩存就不能看見最新版小程序了嗎?
1、微信會固定一段時間后自動清除小程序緩存,如果沒清除緩存則不能馬上看到最新版的小程序;
2、如果想看到最新版的小程序可以手動刪除小程序,如果不想讓用戶手動清除緩存,可以添加更新提示,詳見下一條更新提示。

更新機制

冷啟動
小程序首次打開或銷毀后再次被打開,小程序冷啟動時,會檢查小程序是否有最新版本。如果有則將異步下載最新版本,但是仍將運行當前版本等到下一次冷啟動時再運行最新版本。
熱啟動
小程序打開后,在一段時間內(目前:5分鐘)再次被打開,此時會將后臺的小程序切換到前臺。
小程序迭代速度比較快,比如修復某個BUG,每次發布了新的代碼,更新不及時,著急的時候,得讓用戶刪除小程序再進入才可以。這時候就需要使用強制更新技術,調用wx.getUpdateManager API進行處理,這樣用戶打開小程序將會出現更新提示,就不用讓用戶手動刪除小程序啦。接口文檔:https://developers.weixin.qq.com/miniprogram/dev/api/wx.getUpdateManager.html?search-key=%E6%9B%B4%E6%96%B0

引導添加小程序

什么情況下引導?
在最能吸引用戶回頭率的業務場景中引導用戶添加小程序。

可以判斷用戶是否添加過當前小程序嗎?
因為微信沒有提供此接口,所以開發者無法判斷用戶是否添加過某小程序。

如何設計?
手動點擊「已添加小程序」或者「我知道了」后則不再彈出,如下圖:

首次打開美團小程序

公眾號關注組件

用戶掃碼打開小程序時,開發者可在小程序內配置公眾號關注組件,方便用戶快捷關注公眾號,實現一碼兩用使用場景。
開發文檔:https://developers.weixin.qq.com/miniprogram/dev/component/official-account.html
例:騰訊官方小程序「小經費」,在小程序首頁加入公眾號關注組件

騰訊小經費小程序

壓縮圖片接口

用于前端壓縮圖片,可選壓縮質量。
接口文檔:https://developers.weixin.qq.com/miniprogram/dev/api/wx.compressImage.html?from=groupmessage&isappinstalled=0

小程序轉發

微信不提倡開發者誘導或強制用戶轉發至朋友圈,如轉發后才能解鎖某項功能等。
不自定義轉發圖片的情況下,默認會取當前頁面,從頂部開始,高度為 80% 屏幕寬度的圖像作為轉發圖片。
文檔說明:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/share.html

小程序跳轉

在小程序里打開另外一個小程序
接口文檔:https://developers.weixin.qq.com/miniprogram/dev/api/wx.navigateToMiniProgram.html

返回到上一個小程序
只有在當前小程序是被其他小程序打開時可以調用成功。
接口文檔:https://developers.weixin.qq.com/miniprogram/dev/api/wx.navigateBackMiniProgram.html

內容安全

當小程序提供UGC內容時,需要接入內容安全接口,否則審核有可能不通過。
文字審核接口:https://developers.weixin.qq.com/miniprogram/dev/api/msgSecCheck.html
圖片審核接口:https://developers.weixin.qq.com/miniprogram/dev/api/imgSecCheck.html

模版消息

去「微信公眾平臺」設置模版,拿到模板ID和模版格式,然后進行開發。開發完成后用戶就可以在微信服務通知里接收到模版消息了。
開發文檔:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/template-message.html

服務通知

什么是服務通知?
可以理解為它是個推送消息的微信服務號,用于接收各個小程序的模版消息,對應技術是模版消息。
小程序不能隨意給用戶推送消息,只有當用戶跟小程序發生互動行為后,才具備推送通知的能力。

如何讓用戶與小程序發生互動行為?
1、支付,1次支付可推送3條,多次支付時推送條數獨立,支付后7天內有效;
2、提交表單,1次提交表單可推送1條,多次提交時推送條數獨立,表單提交后7天內有效。

注意事項:
1、用戶基本都不會關閉微信的消息推送,所以相比較 App推送和短信推送來說,小程序的推送觸達率會高很多。
2、但如果做的太過分了,惡意誘導用戶進行觸發操作令用戶反感,會有被用戶拒收該小程序模版消息的風險。

如何設計?
很多開發者會把推送的主題字號加大,也可以加上五彩斑斕的顏色,或者給內容加一些 Emoji,意圖制造出Duang~ Duang~ Duang~的效果,吸引用戶的注意力。

微信服務通知

客服消息

小程序內置客服,點擊這里查看詳情
開發文檔:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/customer-message/customer-message.html

用戶反饋

1、可用「騰訊吐個槽」小程序快速建立小程序用戶反饋平臺,對應技術是小程序跳轉。
官網:https://tucao.qq.com/
2、也可使用小程序插件來建立,請在「微信公眾號平臺-插件」里搜索「騰訊吐個槽」。

附近的小程序

在「微信公眾平臺」開啟附近的小程序后,用戶可以在「微信-發現-小程序-附近的小程序」里查找到。

小程序審核

小程序審核一般24H內會審核通過,但是如果你的小程序涉及社交、提現、紅包等內容時則需要當地工信部二次審核,審核時間7-14日,請開發者做好心理準備,避免在預計的上線時間時拉閘。

圖片縮放和裁剪

https://developers.weixin.qq.com/miniprogram/dev/component/image.html

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,882評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,208評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,746評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,666評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,477評論 6 407
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,960評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,047評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,200評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,726評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,617評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,807評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,327評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,049評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,425評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,674評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,432評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,769評論 2 372