最近在開發一個快應用,其實不能說是一個快應用啦,是一個用戶登錄注冊的功能。其中需要涉及到oppo賬號授權。
這個事情還得從兩個帳號說起,快應用開發者帳號
和OPPO開發者帳號
。
快應用開發者帳號
首先先說下這個快應用開發者帳號
,其作用就是綁定廠商和上傳快應用。對于快應用帳號如何申請,官網和各個廠商的開發平臺都有相應的文檔教程,這里筆者就不介紹了。但有有一點需要提醒一下,快應用開發者帳號必須完善資料,審核通過了才能在頂部有開發者中心這一項,上面說到的廠商帳號綁定就在這個欄目里。如下圖所示
OPPO開發者帳號
這個帳號與快應用開發者帳號
是多對一的關系,一個快應用開發者帳號
只能綁定一個OPPO開發者帳號
,但一個OPPO開發者帳號
可對應多個快應用開發者帳號
。至于這個OPPO開發者帳號怎么用呢,這里先保留。
先說下原由,為何故事因這兩個帳號而起。
事情是這樣的......
有一天,產品給我這兩個帳號,我當時還啥也不懂,你給我就收下咯。直到開發到oppo授權階段,我愣住了。
在快應用開發者帳號
里,綁定的是oppo帳號A(如下圖),但是給我的是oppo帳號B。這兩個有啥關系!!我著急了,趕緊告訴我們產品,這兩個帳號沒有本質的聯系,是不對的。他又找了給這兩個帳號的相關人員,歷經波折......······.......嗯。終于找到了oppo帳號A,此時的我已經感動的老淚縱橫【夸張了】。
所以正確的流程應該是用與快應用開發者帳號
綁定的OPPO開發者帳號
登錄到OPPO平臺進行開通帳號服務。【也許這里有人會吐槽,很簡單的流程為何還寫了這么多。嗯,他說的也不無道理,但是記錄的目的就是防止有人也跟我一樣,迷糊了一圈】
你是不是以為找到正確的oppo帳號A就ok。當時的我也跟你一樣的想法!事實上呢,好吧!是我(們)想太多,事情并沒有這么簡單。
我調用account.authorize
還是獲取不到授權信息。重點是獲取服務提供商account.getProvider()
都獲取不到,這個數據應該不需要什么多余操作就能獲取到的呀。我試了好幾個安卓設備都是一樣的結果,空空如也~~~
組里就我自己接觸了快應用,也無人可解問。接著我就開始各種加群,QQ群(oppo開發者交流群
,微信群(快應用官方技術交流群
)。我就各種問呀問呀,雖然回答很慢(畢竟大家都有自己的工作嘛),但是都很實用。群里有各個廠商的技術大佬在,最為活躍的還屬華為的技術大大,很感恩,因為他,我接觸到了oppo快應用相關的技術大佬,為后期工作打下了深厚的基礎。
“三人行,必有我師焉”
沒錯,接下來還是繼續加群。接下來的第一個群,解決了無法獲取服務提供商的問題。你猜是怎么解決的?答案很簡單就是換了個快應用調試器。。
原因是這樣的,我這個oppo手機內置的快應用運行平臺是2.1的灰度版本暫時不能用聯盟官網的調試器,后來是oppo技術人員單獨發我一個調試器進行調試,不過他也表名,此舉只是臨時方案,后面會支持聯盟官網的調試器。系統設置 - 應用管理 - 快應用可查看快應用版本。
好了,有了能調試的調試器。那就來看看賬號服務是否能走通吧~
無奈還是不行,好在不像之前,已經有相關錯誤提示啦~
fail: code = 200, data = generic error
可行官網也沒介紹這200是啥錯。那我就只能厚著臉皮問oppo技術大大了,好在遇到了一群暖心的小哥哥小姐姐,被告知:要將快應用先提交(不用一定要上架),此舉只是為了能申請賬號服務,這里順便提一句,原生應用和快應用申請賬號服務是分開的。看到后面你就會明白這句話是啥意思啦~
那接下來就是提交快應用。這次提交你可別提交一個到處bug的rpk。至少是功能完整,就差賬號服務這一功能,提交完成就是坐等審核通過啦。建議你加下快應用官方客服
的微信,這樣有問題你可以直接問他,或是你的快應用提交有誤之處,他們也可能及時聯系到你,方便你們溝通。
·········.........·········經過漫長的審核,終于通過啦~
接下來就是講講申請賬號服務啦
這里,我又加入了另一個群,沒錯就是關于賬號服務的群。
由于目前oppo關于快應用開通賬號的頁面還沒開放,相關技術給了我線上地址,這里就不展示了。頁面內容與原生應用開通賬號服務的模樣一般無二。如下圖所示,我們申請的就是第一項推送能力項openid。
點擊立即開通
,里頭長這樣。
那紅框這一塊如何填寫呢? 隨便填
這里筆者覺得有些粗糙了,相信今后這一塊會完善好。這一點我個人覺得還是華為做的好一些,開放文檔里也寫的很明了。
走到這一步就差不多了,就等審核通過啦。
···
審核通過啦,當我再次調試頁面時提示我更新到最新版,可能是我剛好趕上新版調試器發布。時間總是如此的巧合。。
更新完調試器,在調試頁面。我真的感動了,調用賬號授權接口拿到code了。。。(當時心情無語言表)
(完)
此文只是記錄快應用賬號接入的過程,僅供借鑒,隨著快應用的發展,各家廠商產品的完善,大家可能不會像筆者這般糾結,如能幫助到大家,慶幸寫下此文。