App打開微信小程序并傳遞參數(shù)

在App中打開小程序的功能發(fā)布有一段時間了啦膜,網(wǎng)上關于這個的新聞很多有送,但是技術資料并不多,我們有項目需要嘗試這種方式僧家,特意試了一下雀摘,發(fā)現(xiàn)還是有一些坑,分享給大家八拱。

首先微信官方文檔在微信.開放平臺上阵赠,截圖如下:


image.png

一. 開發(fā)前先得做好幾個準備工作:

  1. 在微信開放平臺上有賬號而且有通過的移動應用。


    image.png
  2. 在微信公眾平臺有賬號而且有小程序肌稻,最好發(fā)布為體驗版本


    image.png
  3. 在微信開放平臺把對應的移動應用和小程序建立關聯(lián)清蚀。這個過程來回需要登陸和掃二維碼n次。

image.png

二. 在android和ios調(diào)試官方sample打開小程序

注意官方下載的sample配置的證書和bundle id必須和在微信開放平臺對應的移動應用使用的一致爹谭。


image.png

打開小程序的核心代碼不多枷邪,里面有幾個參數(shù)必須設置正確

String appId = "wxd930ea5d5a258f4f"; // 填應用AppId
IWXAPI api = WXAPIFactory.createWXAPI(context, appId);

WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req();
req.userName = "gh_d43f693ca31f"; // 填小程序原始id
req.path = path;                  //拉起小程序頁面的可帶參路徑,不填默認拉起小程序首頁
req.miniprogramType = WXLaunchMiniProgram.Req.MINIPTOGRAM_TYPE_RELEASE;// 可選打開 開發(fā)版诺凡,體驗版和正式版
api.sendReq(req);

上面幾個參數(shù)再詳細說一下:

  • appId指的是微信開放平臺對應移動應用的appId东揣,而不是小程序的appId,這里注意
  • userName是微信公眾平臺里小程序的原始Id腹泌,是gh開頭的嘶卧。


    image.png
  • req.path就是打開小程序的路徑,傳遞參數(shù)就是通過這個來傳遞凉袱,但是文檔上并沒有說芥吟,試出來的。
req.path="page/index?key1=xxx&key2=yyy";//類似http的url方法來傳遞參數(shù)

*req.miniprogramType選的是開發(fā)和體驗版本专甩,正式版本的小程序沒有測試過运沦。

ios和android類似,不再細說配深。

3. 在小程序端接受App傳遞過來的參數(shù)

上面的App打開的path是'path/index',所以需要把App的onLaunch事件定義在page/index.js上


image.png

這里的options.scene是1069携添,這個場景id表示從app打開。
options.query.key1和options.query.key2就是app打開小程序傳遞的參數(shù)篓叶。

4. 關閉小程序回到App并傳遞數(shù)據(jù)

//小程序端通過navigateBackApplication來關閉
f1: function (e) {
    wx.navigateBackApplication({
      "extraData":"傳遞到app的數(shù)據(jù)"
    })
}

其中navigateBackApplication是一個新的函數(shù)烈掠,在微信小程序的API和IDE的自動提示里都沒有羞秤。
Android和iOS通過一個回調(diào)函數(shù)來接受這個參數(shù):

public void onResp(BaseResp resp) {
    if (resp.getType() == ConstantsAPI.COMMAND_LAUNCH_WX_MINIPROGRAM) {
        WXLaunchMiniProgram.Resp launchMiniProResp = (WXLaunchMiniProgram.Resp) resp;
        String extraData =launchMiniProResp.extMsg; // 對應JsApi navigateBackApplication中的extraData字段數(shù)據(jù)
    }
}

這里有一個坑,應該是bug或許后期微信會解決左敌。就是Android接受的參數(shù)必須是一個js對象瘾蛋,ios接受的參數(shù)是一個字符串。
也就是在小程序端現(xiàn)在必須這么寫:

//小程序端通過navigateBackApplication來關閉
f1: function (e) {
   if(在android下){//wx.getSystemInfo
    wx.navigateBackApplication({
      "extraData":{key:"傳遞到app的數(shù)據(jù)"}
    })
   else{
      wx.navigateBackApplication({
        "extraData":"傳遞到app的數(shù)據(jù)"
    })
  }
}

大概過程就是這樣矫限,能在app里打開小程序而且還能傳遞參數(shù)這個功能還是非常有用的哺哼,小程序和app很多共通的功能可以只實現(xiàn)一套小程序就可以了。

AppWorker官方已經(jīng)在do_TencentWX 組件集成了這個功能叼风,可以跨平臺使用這個功能取董。

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市无宿,隨后出現(xiàn)的幾起案子茵汰,更是在濱河造成了極大的恐慌,老刑警劉巖孽鸡,帶你破解...
    沈念sama閱讀 216,324評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蹂午,死亡現(xiàn)場離奇詭異,居然都是意外死亡彬碱,警方通過查閱死者的電腦和手機豆胸,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,356評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來巷疼,“玉大人配乱,你說我怎么就攤上這事∑こ伲” “怎么了搬泥?”我有些...
    開封第一講書人閱讀 162,328評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長伏尼。 經(jīng)常有香客問我忿檩,道長,這世上最難降的妖魔是什么爆阶? 我笑而不...
    開封第一講書人閱讀 58,147評論 1 292
  • 正文 為了忘掉前任燥透,我火速辦了婚禮,結(jié)果婚禮上辨图,老公的妹妹穿的比我還像新娘班套。我一直安慰自己,他們只是感情好故河,可當我...
    茶點故事閱讀 67,160評論 6 388
  • 文/花漫 我一把揭開白布吱韭。 她就那樣靜靜地躺著,像睡著了一般鱼的。 火紅的嫁衣襯著肌膚如雪理盆。 梳的紋絲不亂的頭發(fā)上痘煤,一...
    開封第一講書人閱讀 51,115評論 1 296
  • 那天,我揣著相機與錄音猿规,去河邊找鬼衷快。 笑死,一個胖子當著我的面吹牛姨俩,可吹牛的內(nèi)容都是我干的蘸拔。 我是一名探鬼主播,決...
    沈念sama閱讀 40,025評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼环葵,長吁一口氣:“原來是場噩夢啊……” “哼调窍!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起积担,我...
    開封第一講書人閱讀 38,867評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎猬仁,沒想到半個月后帝璧,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,307評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡湿刽,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,528評論 2 332
  • 正文 我和宋清朗相戀三年的烁,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片诈闺。...
    茶點故事閱讀 39,688評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡渴庆,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出雅镊,到底是詐尸還是另有隱情襟雷,我是刑警寧澤,帶...
    沈念sama閱讀 35,409評論 5 343
  • 正文 年R本政府宣布仁烹,位于F島的核電站耸弄,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏卓缰。R本人自食惡果不足惜计呈,卻給世界環(huán)境...
    茶點故事閱讀 41,001評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望征唬。 院中可真熱鬧捌显,春花似錦、人聲如沸总寒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,657評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽摄闸。三九已至击罪,卻和暖如春哲嘲,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背媳禁。 一陣腳步聲響...
    開封第一講書人閱讀 32,811評論 1 268
  • 我被黑心中介騙來泰國打工眠副, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人竣稽。 一個月前我還...
    沈念sama閱讀 47,685評論 2 368
  • 正文 我出身青樓囱怕,卻偏偏與公主長得像,于是被迫代替她去往敵國和親毫别。 傳聞我的和親對象是個殘疾皇子娃弓,可洞房花燭夜當晚...
    茶點故事閱讀 44,573評論 2 353

推薦閱讀更多精彩內(nèi)容

  • 轉(zhuǎn)載鏈接 注:本文轉(zhuǎn)載知乎上的回答 作者:初雪 鏈接:https://www.zhihu.com/question...
    pengshuangta閱讀 28,531評論 9 295
  • 2017年還有5天的時間台丛,曾經(jīng)的夢想和計劃你還記得多少?你又完成了多少砾肺?2017像再也尋不見的童年挽霉,像被風吹走的草...
    三月陽春_c953閱讀 215評論 0 2
  • 一管清簫年華逝侠坎,年輪千轉(zhuǎn)紅顏盡,前塵湮滅桑田處裙盾,朝后落暮流年絕实胸。生命似花,人生如夢番官,芬芳轉(zhuǎn)瞬即逝庐完,飄零的花瓣...
    君陌痕閱讀 380評論 0 4
  • 1、下筆輕柔有余徘熔,剛勁不足假褪,說明遇事優(yōu)柔寡斷,舉棋不定近顷。 2生音、結(jié)構(gòu)緊湊,表明凡事小心謹慎窒升,處處提防缀遍。 3、整體感差...
    江戶川柯鎮(zhèn)惡閱讀 313評論 0 0
  • 1 逢年過節(jié),朋友聚會,喝酒當然是必不可少的譬挚。不管你的酒量是好是差锅铅,對于很多人來說,感情全在酒里减宣。風府君自從開上車...
    風府君閱讀 684評論 2 1