第10章 微信小程序核心API_第1頁
第10章 微信小程序核心API_第2頁
第10章 微信小程序核心API_第3頁
第10章 微信小程序核心API_第4頁
第10章 微信小程序核心API_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第10章微信小程序核心API小程序API介紹設(shè)備與系統(tǒng)信息路由與界面交互設(shè)備與傳感器多媒體本地?cái)?shù)據(jù)緩存010204050306小程序API介紹微信小程序核心APIAPI(全稱ApplicationProgrammingInterface,簡稱API)是一些預(yù)先定義的應(yīng)用程序接口,或者是指軟件系統(tǒng)不同模塊之間銜接的約定。我們在實(shí)際項(xiàng)目開發(fā)中的API通常有兩種含義:一種是項(xiàng)目中預(yù)先定義好的實(shí)現(xiàn)一系列特定功能的函數(shù);另一種是在B/S架構(gòu)下的HTTP接口,客戶端發(fā)送HTTP請求,調(diào)用服務(wù)端的功能后再得到執(zhí)行結(jié)果的響應(yīng)。微信小程序核心API基礎(chǔ)模塊API網(wǎng)絡(luò)模塊API路由模塊API界面交互API媒體模塊API系統(tǒng)文件API設(shè)備模塊API數(shù)據(jù)緩存API開放接口API微信小程序一共提供了九大模塊的API函數(shù),這九個(gè)模塊分別是:設(shè)備與系統(tǒng)信息設(shè)備與系統(tǒng)信息wx.getWindowInfo()方法,可以獲取窗口信息。屬性如下:字段名類型說明pixelRationumber設(shè)備像素比screenWidthnumber屏幕寬度,單位pxscreenHeightnumber屏幕高度,單位pxwindowWidthnumber可使用窗口寬度,單位pxwindowHeightnumber可使用窗口高度,單位pxstatusBarHeightnumber狀態(tài)欄的高度,單位pxsafeAreaObject在豎屏正方向下的安全區(qū)域screenTopnumber窗口上邊緣的y值設(shè)備與系統(tǒng)信息獲取小程序窗口信息的示例代碼如下:Page({onReady(){constwindowInfo=wx.getWindowInfo()console.log(windowInfo.pixelRatio)//設(shè)備像素比console.log(windowInfo.screenWidth)//屏幕寬度console.log(windowInfo.screenHeight)//屏幕高度console.log(windowInfo.windowWidth)//可使用窗口寬度console.log(windowInfo.windowHeight)//可使用窗口高度console.log(windowInfo.statusBarHeight)//狀態(tài)欄的高度console.log(windowInfo.safeArea)//在豎屏正方向下的安全區(qū)域console.log(windowInfo.screenTop)//窗口上邊緣的y值}})設(shè)備與系統(tǒng)信息wx.getWindowInfo()方法,可以獲取窗口信息??梢垣@取設(shè)備的品牌、操作系統(tǒng)即設(shè)備型號等信息;wx.getSystemSetting()獲取設(shè)備的設(shè)置信息,可以獲取設(shè)備的藍(lán)牙開關(guān)狀態(tài)、地理位置開關(guān)狀態(tài)、Wifi開關(guān)狀態(tài)以及當(dāng)前的設(shè)備方向?yàn)樨Q屏還是橫屏等設(shè)備的配置信息。其他獲取系統(tǒng)信息的方法:設(shè)備與系統(tǒng)信息Page({onReady(){//獲取設(shè)備的基礎(chǔ)信息constdeviceInfo=wx.getDeviceInfo()console.log(deviceInfo.abi)//二進(jìn)制接口類型console.log(deviceInfo.benchmarkLevel)//設(shè)備性能等級console.log(deviceInfo.brand)//設(shè)備品牌console.log(deviceInfo.model)//設(shè)備型號console.log(deviceInfo.platform)//客戶端平臺console.log(deviceInfo.system)//操作系統(tǒng)及版本//獲取設(shè)備的配置信息constsystemSetting=wx.getSystemSetting()console.log(systemSetting.bluetoothEnabled)//藍(lán)牙開關(guān)狀態(tài)console.log(systemSetting.deviceOrientation)//設(shè)備方向console.log(systemSetting.locationEnabled)//地理位置開關(guān)狀態(tài)console.log(systemSetting.wifiEnabled)//Wifi開關(guān)狀態(tài)}})小程序獲取設(shè)備信息的示例代碼如下:設(shè)備與系統(tǒng)信息Page({onReady(){constappBaseInfo=wx.getAppBaseInfo()console.log(appBaseInfo.SDKVersion)//獲取客戶端基礎(chǔ)庫版本console.log(appBaseInfo.enableDebug)//是否已打開調(diào)試console.log(appBaseInfo.host)//獲取小程序運(yùn)行的宿主環(huán)境console.log(appBaseInfo.language)//獲取微信設(shè)置的語言console.log(appBaseInfo.version)//獲取微信版本號console.log(appBaseInfo.theme)//獲取系統(tǒng)當(dāng)前主題}})獲取用戶微信APP基礎(chǔ)信息的示例代碼如下:路由與界面交互路由與界面交互Page({onReady(){wx.request({url:'',//https地址data:{},//請求參數(shù)header:{//請求頭信息'content-type':'application/json'},success(res){//res為請求成功后的響應(yīng)對象console.log(res);}})}})wx.request()發(fā)送HTTPS請求,示例代碼如下:路由與界面交互Page({onReady(){wx.chooseImage({success(res){consttempFilePaths=res.tempFilePathswx.uploadFile({url:'',//要上傳的服務(wù)器接口地址filePath:tempFilePaths[0],//要上傳文件資源的路徑name:'file',//文件對應(yīng)的keyformData:{//HTTPS請求中的額外參數(shù)'user':'test'},success(res){//res為上傳成功后的響應(yīng)對象constdata=res.data}})}})}})wx.uploadFile()文件上傳,示例代碼如下:路由與界面交互Page({onReady(){wx.downloadFile({url:'',//要下載文件的URL地址success(res){//res為響應(yīng)對象if(res.statusCode===200){wx.playVoice({filePath:res.tempFilePath})}}})}})wx.downloadFile()文件下載,示例代碼如下:路由與界面交互wx.switchTab(),跳轉(zhuǎn)到tabBar頁面,并關(guān)閉其他所有非tabBar頁面;wx.reLaunch(),關(guān)閉所有頁面,打開到應(yīng)用內(nèi)的某個(gè)頁面;wx.redirectTo(),關(guān)閉當(dāng)前頁面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個(gè)頁面,但是不允許跳轉(zhuǎn)到tabbar頁面;wx.navigateTo(),保留當(dāng)前頁面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個(gè)頁面;wx.navigateBack(),關(guān)閉當(dāng)前頁面,返回上一頁面或多級頁面。頁面跳轉(zhuǎn)的API:路由與界面交互//index.wxml<buttonbindtap="onNavigateTo">保留當(dāng)前頁面跳轉(zhuǎn)</button>頁面跳轉(zhuǎn)的API示例代碼://index.jsPage({onNavigateTo(){wx.navigateTo({url:'../logs/logs',success(){console.log('跳轉(zhuǎn)成功');},fail(){console.log('跳轉(zhuǎn)失敗');}})},})路由與界面交互wx.switchTab(),跳轉(zhuǎn)到tabBar頁面,并關(guān)閉其他所有非tabBar頁面;wx.reLaunch(),關(guān)閉所有頁面,打開到應(yīng)用內(nèi)的某個(gè)頁面;wx.redirectTo(),關(guān)閉當(dāng)前頁面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個(gè)頁面,但是不允許跳轉(zhuǎn)到tabbar頁面;wx.navigateTo(),保留當(dāng)前頁面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個(gè)頁面;wx.navigateBack(),關(guān)閉當(dāng)前頁面,返回上一頁面或多級頁面。頁面跳轉(zhuǎn)的API:路由與界面交互wx.showToast(),頁面消息輕提示;wx.showModal(),頁面模態(tài)對話框;wx.showLoading(),顯示loading加載的提示框;wx.showActionSheet(),顯示底部操作菜單;wx.startPullDownRefresh()下拉刷新;wx.stopPullDownRefresh()停止下拉刷新。頁面交互與反饋的API:路由與界面交互Page({onReady(){wx.showToast({title:'頁面加載成功',icon:'success',duration:3000})}})頁面交互與反饋的API,示例代碼:設(shè)備與傳感器設(shè)備與傳感器wx.saveFile(),保存文件到本地;wx.removeSavedFile(),刪除本地緩存文件;wx.openDocument(),新開頁面打開文檔;wx.getSavedFileList(),獲取該小程序下已保存的本地緩存文件列表;wx.getSavedFileInfo(),獲取本地文件的文件信息;wx.getFileSystemManager(),獲取全局唯一的文件管理器;wx.getFileInfo(),獲取文件信息。文件系統(tǒng)的API:設(shè)備與傳感器wx.onNetworkWeakChange(),監(jiān)聽弱網(wǎng)狀態(tài)變化事件;wx.onNetworkStatusChange(),監(jiān)聽網(wǎng)絡(luò)狀態(tài)變化事件;wx.offNetworkWeakChange(),取消監(jiān)聽弱網(wǎng)狀態(tài)變化事件;wx.offNetworkStatusChange(),取消監(jiān)聽網(wǎng)絡(luò)狀態(tài)變化事件;wx.getNetworkType(),獲取網(wǎng)絡(luò)類型;wx.getLocalIPAddress(),獲取局域網(wǎng)IP地址。獲取設(shè)備網(wǎng)絡(luò)信息API:設(shè)備與傳感器wx.setVisualEffectOnCapture(),設(shè)置截屏/錄屏?xí)r屏幕表現(xiàn);wx.setScreenBrightness(),設(shè)置屏幕亮度;wx.setKeepScreenOn(),設(shè)置是否保持常亮狀態(tài);wx.onUserCaptureScreen(),監(jiān)聽用戶主動(dòng)截屏事件;wx.offUserCaptureScreen(),用戶主動(dòng)截屏事件;wx.getScreenBrightness(),獲取屏幕亮度。獲取屏幕信息API:多媒體多媒體CameraContext.onCameraFrame(onCameraFrameCallbackcallback),用于獲取Camera實(shí)時(shí)幀數(shù)據(jù);CameraContext.takePhoto(Objectobject),用于拍攝照片;CameraContext.setZoom(Objectobject),用于設(shè)置縮放級別;CameraContext.startRecord(Objectobject),開始屏幕錄像;CameraContext.stopRecord(Objectobject),結(jié)束屏幕錄像。多媒體操作的API:多媒體//index.wxml<cameradevice-position="back"flash="off"binderror="error"style="width:100%;height:300px;"></camera><buttontype="primary"bindtap="takePhoto">拍照</button><view>預(yù)覽</view><imagemode="widthFix"src="{{src}}"></image>拍攝照片示例代碼://index.jsPage({takePhoto(){constctx=wx.createCameraContext()ctx.takePhoto({quality:'high',

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論