1.基礎接口
判斷當前客戶端版本是否支持指定JS接口,使用方法如下。
wx.checkJsApi({ jsApiList: ['chooseImage'], // 需要檢測的JS接口列表 success: function(res) { // 以鍵值對的形式返回,可用的API值為true,不可用為false // 如{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"} } });
2.分享接口
獲取「分享到朋友圈」按鈕點擊狀態及自定義分享內容接口的使用方法如下。
wx.onMenuShareTimeline({ title: '', // 分享標題 link: '', // 分享鏈接 imgUrl: '', // 分享圖標 success: function { // 用戶確認分享後執行的回調函數 }, cancel: function { // 用戶取消分享後執行的回調函數 } });
獲取「分享給朋友」按鈕點擊狀態及自定義分享內容接口的使用方法如下。
wx.onMenuShareAppMessage({ title: '', // 分享標題 desc: '', // 分享描述 link: '', // 分享鏈接 imgUrl: '', // 分享圖標 type: '', // 分享類型,music、video或link,不填默認為link dataUrl: '', // 如果type是music或video,則要提供數據鏈接,默認為空 success: function { // 用戶確認分享後執行的回調函數 }, cancel: function { // 用戶取消分享後執行的回調函數 } });
獲取「分享到QQ」按鈕點擊狀態及自定義分享內容接口的使用方法如下。
wx.onMenuShareQQ({ title: '', // 分享標題 desc: '', // 分享描述 link: '', // 分享鏈接 imgUrl: '', // 分享圖標 success: function { // 用戶確認分享後執行的回調函數 }, cancel: function { // 用戶取消分享後執行的回調函數 } });
獲取「分享到騰訊微博」按鈕點擊狀態及自定義分享內容接口的使用方法如下。
wx.onMenuShareWeibo({ title: '', // 分享標題 desc: '', // 分享描述 link: '', // 分享鏈接 imgUrl: '', // 分享圖標 success: function { // 用戶確認分享後執行的回調函數 }, cancel: function { // 用戶取消分享後執行的回調函數 } });
獲取「分享到QQ空間」按鈕點擊狀態及自定義分享內容接口的使用方法如下。
wx.onMenuShareQZone({ title: '', // 分享標題 desc: '', // 分享描述 link: '', // 分享鏈接 imgUrl: '', // 分享圖標 success: function { // 用戶確認分享後執行的回調函數 }, cancel: function { // 用戶取消分享後執行的回調函數 } });
3.圖像接口
拍照或從手機相冊中選圖接口的使用方法如下。
wx.chooseImage({ count: 1, // 默認為9 sizeType: ['original', 'compressed'], // 可以指定是原圖還是壓縮圖,默認兩者都有 sourceType: ['album', 'camera'], // 可以指定來源是相冊還是相機,默認兩者都有 success: function (res) { var localIds = res.localIds; // 返回選定照片的本地ID列表,localIds可以作 // 為img標籤的src屬性顯示圖片 } });
預覽圖片接口的使用方法如下。
wx.previewImage({ current: '', // 當前顯示圖片的HTTP鏈接 urls: // 需要預覽的圖片HTTP鏈接列表 });
上傳圖片接口的使用方法如下。
wx.uploadImage({ localId: '', // 需要上傳的圖片的本地ID,由chooseImage接口獲得 isShowProgressTips: 1, // 默認為1,顯示進度提示 success: function (res) { var serverId = res.serverId; // 返回圖片的服務器端ID } });
下載圖片接口的使用方法如下。
wx.downloadImage({ serverId: '', // 需要下載的圖片的服務器端ID,由uploadImage接口獲得 isShowProgressTips: 1, // 默認為1,顯示進度提示 success: function (res) { var localId = res.localId; // 返回圖片下載後的本地ID } });
4.音頻接口
開始錄音接口的使用方法如下。
wx.startRecord;
停止錄音接口的使用方法如下。
wx.stopRecord({ success: function (res) { var localId = res.localId; } });
監聽錄音自動停止接口的使用方法如下。
wx.onVoiceRecordEnd({ // 錄音時間超過一分鐘沒有停止的時候會執行 complete 回調 complete: function (res) { var localId = res.localId; } });
播放音頻接口的使用方法如下。
wx.playVoice({ localId: '' // 需要播放的音頻的本地ID,由stopRecord接口獲得 });
暫停播放音頻接口的使用方法如下。
wx.pauseVoice({ localId: '' // 需要暫停播放的音頻的本地ID,由stopRecord接口獲得 });
停止播放音頻的接口的使用方法如下。
wx.stopVoice({ localId: '' // 需要停止播放的音頻的本地ID,由stopRecord接口獲得 });
監聽音頻播放完畢接口的使用方法如下。
wx.onVoicePlayEnd({ success: function (res) { var localId = res.localId; // 返回音頻的本地ID } });
上傳音頻接口的使用方法如下。
wx.uploadVoice({ localId: '', // 需要上傳的音頻的本地ID,由stopRecord接口獲得 isShowProgressTips: 1, // 默認為1,顯示進度提示 success: function (res) { var serverId = res.serverId; // 返回音頻的服務器端ID } });
下載音頻接口的使用方法如下。
wx.downloadVoice({ serverId: '', // 需要下載的音頻的服務器端ID,由uploadVoice接口獲得 isShowProgressTips: 1, // 默認為1,顯示進度提示 success: function (res) { var localId = res.localId; // 返回音頻的本地ID } });
5.智能接口
識別音頻並返回識別結果接口的使用方法如下。
wx.translateVoice({ localId: '', // 需要識別的音頻的本地ID,由錄音相關接口獲得 isShowProgressTips: 1, // 默認為1,顯示進度提示 success: function (res) { alert(res.translateResult); // 音頻識別的結果 } });
6.設備信息
獲取網絡狀態接口的使用方法如下。
wx.getNetworkType({ success: function (res) { var networkType = res.networkType; // 返回網絡類型:2G、3G、4G、WiFi } });
7.地理位置
使用微信內置地圖查看位置接口的使用方法如下。
wx.openLocation({ latitude: 0, // 緯度,浮點數,範圍為90 ~ -90 longitude: 0, // 經度,浮點數,範圍為180 ~ -180 name: '', // 位置名 address: '', // 地址詳情說明 scale: 1, // 地圖縮放級別,整型值,範圍為1~28,默認為最大 infoUrl: '' // 在查看位置界面底部顯示的超鏈接,可點擊跳轉 });
獲取地理位置接口的使用方法如下。
wx.getLocation({ type: 'wgs84', // 默認為wgs84的GPS坐標,如果要返回直接給openLo // cation用的火星坐標,可傳入'gcj02' success: function (res) { var latitude = res.latitude; // 緯度,浮點數,範圍為90 ~ -90 var longitude = res.longitude; // 經度,浮點數,範圍為180 ~ -180 var speed = res.speed; // 速度,以米/每秒計 var accuracy = res.accuracy; // 位置精度 } });
8.搖一搖周邊
開啟查找周邊iBeacon設備接口的使用方法如下。
wx.startSearchBeacons({ ticket:"", // 搖周邊的業務Ticket,系統自動添加在搖出來的頁面鏈接後面 complete:function(argv){ // 開啟查找完成後的回調函數 } });
關閉查找周邊iBeacon設備接口的使用方法如下。
wx.stopSearchBeacons({ complete:function(res){ // 關閉查找完成後的回調函數 } });
監聽周邊iBeacon設備接口的使用方法如下。
wx.onSearchBeacons({ complete:function(argv){ // 回調函數,可以數組形式取得該商家註冊的在周邊的相關設備列表 } });
9.界面操作
隱藏右上角菜單接口的使用方法如下。
wx.hideOptionMenu;
顯示右上角菜單接口的使用方法如下。
wx.showOptionMenu;
關閉當前網頁窗口接口的使用方法如下。
wx.closeWindow;
批量隱藏功能按鈕接口的使用方法如下。
wx.hideMenuItems({ menuList: // 要隱藏的菜單項,只能隱藏「傳播類」和「保護類」按鈕 });
批量顯示功能按鈕接口的使用方法如下。
wx.showMenuItems({ menuList: // 要顯示的菜單項 });
隱藏所有非基礎按鈕接口的使用方法如下。
wx.hideAllNonBaseMenuItem; // 「基本類」按鈕
顯示所有功能按鈕接口的使用方法如下。
wx.showAllNonBaseMenuItem;
10.微信掃一掃
調起微信掃一掃接口的使用方法如下。
wx.scanQRCode({ needResult: 0, // 默認為0,掃瞄結果由微信處理,1則直接返回掃瞄結果 scanType: ["qrCode","barCode"], // 可以指定掃二維碼還是一維碼,默認兩者都有 success: function (res) { var result = res.resultStr; // 當needResult 為 1 時,掃碼返回的結果 } });
11.微信小店
跳轉微信商品頁接口的使用方法如下。
wx.openProductSpecificView({ productId: '', // 商品ID viewType: '' // 0:默認值,普通商品詳情頁;1:掃一掃商品詳情頁;2:小店商品詳情頁 });
12.微信卡券
批量添加卡券接口的使用方法如下。
wx.addCard({ cardList: [{ cardId: '', cardExt: '' }], // 需要添加的卡券列表 success: function (res) { var cardList = res.cardList; // 添加的卡券列表信息 } });
查看微信卡包中的卡券接口的使用方法如下。
wx.openCard({ cardList: [{ cardId: '', code: '' }] // 需要打開的卡券列表 });
13.微信支付
發起一個微信支付請求的使用方法如下。
wx.chooseWXPay({ timestamp: 0, // 支付簽名時間戳,注意微信JS-SDK中的所有timestamp字段均為小寫。但最新版 // 的支付後台生成簽名使用的timeStamp字段名需大寫其中的S字符 nonceStr: '', // 支付簽名隨機字符串,不長於32位 package: '', // 統一支付接口返回的prepay_id參數值,提交格式為prepay_id=***) signType: '', // 簽名方式,默認為'SHA1',使用新版支付需傳入'MD5' paySign: '', // 支付簽名 success: function (res) { // 支付成功後的回調函數 } });