概述

ff-jssdk是(shì)firefly平台面向WEB前端開發者提供的(de)基于(yú)firefly原生客戶端内的(de)網頁開發工具包。

安裝

# --registry 爲(wéi / wèi) npm 私有倉庫的(de)地(dì / de)址
$ npm install ff-jssdk --registry=http://xxx.x.x.x

接口調用說(shuō)明

ff-jssdk默認導出(chū)Native構造函數,可以(yǐ)通過new Native()的(de)方式創建實例,所有的(de)接口通過該實例對象來(lái)調用。每個(gè)接口除了(le/liǎo)本身需要(yào / yāo)傳遞的(de)參數之(zhī)外,還有以(yǐ)下通用參數:

  • success:接口調用成功時(shí)執行的(de)回調函數
  • fail:接口調用失敗時(shí)執行的(de)回調函數
  • complete:接口調用完成時(shí)的(de)回調函數,無論接口調用成功與否
  • processing:包含進度信息的(de)接口在(zài)執行中調用的(de)函數,例如文件的(de)上(shàng)傳和(hé / huò)下載

以(yǐ)上(shàng)通用回調函數均接收一(yī / yì /yí)個(gè)參數,參數爲(wéi / wèi)一(yī / yì /yí)個(gè)對象,包括code和(hé / huò)data兩個(gè)字段。code代表接口調用狀态,擁有如下通用狀态值:

  • 0:調用成功
  • -1:調用失敗

其他(tā)狀态碼在(zài)接口文檔中會有說(shuō)明。data的(de)值是(shì)一(yī / yì /yí)個(gè)對象,包含接口的(de)返回值

示例

import Native from 'ff-jssdk'

const native = new Native()

// 下載文件到(dào)本地(dì / de)
native.downloadFile({
    url: 'api/downloadSth',
    filePath: 'download',
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    processing: (ret) => {
        // 下載過程中的(de)回調函數
        const { code, data: { progress } } = ret

        console.log(progress) // 下載進度
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})


ff-jssdk接口定義

網絡

下載文件資源到(dào)本地(dì / de):downloadFile()

客戶端發起一(yī / yì /yí)個(gè) HTTP GET 請求

參數

屬性 類型 默認值 必填 說(shuō)明
url string 是(shì) 下載資源的(de)
filePath string 指定文件下載後存儲的(de)路徑

回調參數

屬性 類型 說(shuō)明
progress string 下載進度
filePath string 下載文件後存儲路徑

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
1 下載中
100 非法url
101 參數json格式錯誤

示例代碼

import Native from 'ff-jssdk'

const native = new Native()

// 下載文件到(dào)本地(dì / de)
native.downloadFile({
    url: 'static/picture/542c3569-51f3-4a13-b7df-57f5da454847.jpg',
    filePath: '/test_download/aaa.jpg',
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    processing: (ret) => {
        // 下載過程中的(de)回調函數
        const { code, data: { progress } } = ret

        console.log(progress) // 下載進度
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

上(shàng)傳文件資源:uploadFile()

客戶端發起一(yī / yì /yí)個(gè) HTTP POST 請求,其中 content-type 爲(wéi / wèi) multipart/form-data

參數

屬性 類型 默認值 必填 說(shuō)明
url string 是(shì) 上(shàng)傳至遠端地(dì / de)址
filePath string 是(shì) 本地(dì / de)文件路徑
fileKey string 是(shì) 文件對應的(de) key
formData Object 額外的(de) form data

回調參數

屬性 類型 說(shuō)明
progress string 上(shàng)傳進度
result string 服務器返回的(de)數據

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
1 上(shàng)傳載中
100 非法url
101 參數json格式錯誤
102 非法文件路徑(空、不(bù)存在(zài)、不(bù)是(shì)文件)
103 filekey不(bù)合法

示例代碼

native.uploadFile({
    url:"http://www.httpbin.org/post",
    filePath:"/test_download/aaa.jpg",
    fileKey:"aaa",
    formData:{
        id:"123456",
        key:"67890"
    }},
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    processing: (ret) => {
        // 下載過程中的(de)回調函數
        const { code, data: { progress } } = ret

        console.log(progress) // 下載進度
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

媒體

相機拍照:cameraTakePhoto()

注意:就(jiù)蘋果設備而(ér)言,因爲(wéi / wèi)隐私權限調整,需要(yào / yāo)在(zài)App的(de)Info.plist中自行添加NSCameraUsageDescription;若未添加,則可能造成閃退。

參數

屬性 類型 默認值 必填 說(shuō)明
quality string normal 成像質量,取值範围:high、normal、low

回調參數

屬性 類型 說(shuō)明
tempImagePath string 照片文件的(de)臨時(shí)路徑

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功

示例代碼

native.cameraTakePhoto({
    quality: "normal",
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

相機錄像:cameraStartRecord()、cameraStopRecord()

注意:就(jiù)蘋果設備而(ér)言,因爲(wéi / wèi)隐私權限調整,需要(yào / yāo)在(zài)App的(de)Info.plist中自行添加NSMicrophoneUsageDescription;若未添加,則可能造成閃退。

cameraStartRecord參數:

屬性 類型 默認值 必填 說(shuō)明
quality string normal 成像質量,取值範围:high、normal、low
recordDuration number 10 錄像時(shí)間,取值範围:[0,30],單位秒 ,0秒時(shí)不(bù)操作直接返回

cameraStopRecord參數:無

共同的(de)回調參數:

屬性 類型 說(shuō)明
tempVideoPath string 視頻的(de)文件的(de)臨時(shí)路徑
tempThumbPath string 封面图片文件的(de)臨時(shí)路徑

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功

示例代碼

native.cameraStartRecord({
    quality: "normal",
    recordDuration: 20,
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

選擇图片:chooseImage()

從本地(dì / de)相冊選擇图片或使用相機拍照。

參數

屬性 類型 默認值 必填 說(shuō)明
sourceType Array.\ ["album","camera"] 图片的(de)來(lái)源,相冊(album)、拍照(camera)

回調參數

屬性 類型 說(shuō)明
tempImagePath string 图片文件的(de)臨時(shí)路徑

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功

示例代碼

native.chooseImage({
    sourceType:["album"]
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

壓縮图片:compressImage()

參數

屬性 類型 默認值 必填 說(shuō)明
srcFile string 是(shì) 本地(dì / de)图片路徑
quality number 0.8 壓縮系數,範围[0,1.0],數值越小,图片質量越低

回調參數

屬性 類型 說(shuō)明
tempImagePath string 图片文件的(de)臨時(shí)路徑

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 srcFile非法路徑
101 參數json格式錯誤
102 沒有正确解碼srcFile文件(多爲(wéi / wèi)不(bù)支持的(de)图片格式)

示例代碼

native.compressImage({
    srcFile: "/xxx/test.jpg",
    quality: 0.7,
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

保存图片到(dào)系統相冊:saveImageToPhotosAlbum()

注意:就(jiù)蘋果設備而(ér)言,因爲(wéi / wèi)隐私權限調整,需要(yào / yāo)在(zài)App的(de)Info.plist中自行添加NSPhotoLibraryAddUsageDescription;若未添加,則可能造成閃退。

參數

屬性 類型 默認值 必填 說(shuō)明
filePath string 是(shì) 本地(dì / de)图片路徑

回調參數

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 filePath非法路徑
101 參數json格式錯誤
102 沒有正确解碼srcFile文件(多爲(wéi / wèi)不(bù)支持的(de)图片格式)

示例代碼

native.saveImageToPhotosAlbum({
    filePath:"/xxx/test.jpg",
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

文件

讀文件: readFile()

目前僅支持文本文件

參數:

屬性 類型 默認值 必填 說(shuō)明
filePath string 是(shì) 本地(dì / de)文件路徑
encoding string utf8 字符編碼,取值範围:
utf8/utf-8
utf16/utf-16/utf-16le/ucs2/ucs-2
utf-16be
utf32/utf-32/utf-32le/ucs4/ucs-4
utf-32be

回調參數

屬性 類型 說(shuō)明
data string 文件内容

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 filePath非法路徑
101 參數json格式錯誤
102 不(bù)支持的(de)編碼(encoding)
103 解碼錯誤

示例代碼

native.readFile({
    filePath:"/xx/xx/test.txt",
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

保存文件: saveFile()

目前僅支持文本文件

參數:

屬性 類型 默認值 必填 說(shuō)明
filePath string 是(shì) 本地(dì / de)文件路徑
encoding string utf8 字符編碼,取值範围:
utf8/utf-8
utf16/utf-16/utf-16le/ucs2/ucs-2
utf-16be
utf32/utf-32/utf-32le/ucs4/ucs-4
utf-32be
data string 文件内容;若data字段值不(bù)可用,則會創建一(yī / yì /yí)個(gè)空文件

回調參數

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 filePath非法路徑
101 參數json格式錯誤
102 不(bù)支持的(de)編碼(encoding)
103 filePath已經存在(zài)

示例代碼

native.saveFile({
    filePath:"/xx/xx/test.txt",
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

删除文件: removeSavedFile()

參數:

屬性 類型 默認值 必填 說(shuō)明
filePath string 是(shì) 本地(dì / de)文件路徑

回調參數

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 filePath非法路徑
101 參數json格式錯誤

示例代碼

native.removeSavedFile({
    filePath:"/xx/xx/test.txt",
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

數據緩存

本地(dì / de)緩存操作

獲取緩存: getStorage()

參數:

屬性 類型 默認值 必填 說(shuō)明
key string 是(shì) 緩存的(de)唯一(yī / yì /yí)标識

回調參數

屬性 類型 說(shuō)明
value string

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 key爲(wéi / wèi)空、或長度爲(wéi / wèi)0
101 參數json格式錯誤

示例代碼

native.getStorage({
    key:"k1",
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

更新緩存: setStorage()

參數:

屬性 類型 默認值 必填 說(shuō)明
key string 是(shì) 緩存的(de)唯一(yī / yì /yí)标識
value any 是(shì) 緩存的(de)值,需要(yào / yāo)存儲的(de)内容。隻支持原生類型、Date、及能夠通過JSON.stringify序列化的(de)對象

回調參數

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 key不(bù)合法(爲(wéi / wèi)空、長度爲(wéi / wèi)0)
101 參數json格式錯誤
102 value不(bù)合法

示例代碼

native.setStorage({
    key:"k1",
    value:[1,2,3,4],
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

移除緩存: removeStorage()

參數:

屬性 類型 默認值 必填 說(shuō)明
key string 是(shì) 緩存的(de)唯一(yī / yì /yí)标識

回調參數

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 key爲(wéi / wèi)空、或長度爲(wéi / wèi)0
101 參數json格式錯誤

示例代碼

native.removeStorage({
    key:"k1",
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

清除所有緩存: clearStorage()

參數: 無

回調參數: 無

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功

示例代碼

native.clearStorage({
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

設備

獲取系統剪貼闆的(de)内容: getClipboardData()

回調參數: 無

示例代碼

native.getClipboardData({
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

設置系統剪貼闆的(de)内容: setClipboardData()

參數

屬性 類型 默認值 必填 說(shuō)明
data string 是(shì) 剪貼闆的(de)内容

回調參數

屬性 類型 說(shuō)明
data string 剪貼闆的(de)内容

示例代碼

native.setClipboardData({
    data:"設置剪貼闆",
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

獲取網絡類型:getNetworkType()

回調參數

屬性 類型 說(shuō)明
networkType string 網絡類型

網絡類型 networkType 的(de)合法值:

說(shuō)明
wifi wifi網絡
2g 2g網絡
3g 3g網絡
4g 4g網絡
unknown Android 下不(bù)常見的(de)網絡類型
none 無網絡

示例代碼

native.getNetworkType({
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

添加更新聯系人(rén):addPhoneContact()

注意:就(jiù)蘋果設備而(ér)言,因爲(wéi / wèi)隐私權限調整,需要(yào / yāo)在(zài)App的(de)Info.plist中自行添加NSContactsUsageDescription;若未添加,則可能造成閃退。

添加手機通訊錄聯系人(rén)。用戶可以(yǐ)選擇将該表單以(yǐ)「新增聯系人(rén)」或「添加到(dào)已有聯系人(rén)」的(de)方式,寫入手機系統通訊錄。

參數

屬性 類型 默認值 必填 說(shuō)明
firstName string 是(shì) 名字
addMode string insert 取值範围:
insert(總是(shì)創建新聯系人(rén))
update(若firstName聯系人(rén)存在(zài),則對第一(yī / yì /yí)個(gè)找到(dào)的(de)聯系人(rén)進行覆蓋更新;若不(bù)存在(zài),則創建新聯系人(rén))
photoFilePath string 頭像本地(dì / de)文件路徑
nickName string 昵稱
lastName string 姓氏
middleName string 中間名
remark string 備注
mobilePhoneNumber string 手機号
email string 電子(zǐ)郵箱
homepage string 網站主頁
addressCountry string 聯系地(dì / de)址国家
addressState string 聯系地(dì / de)址省份
addressCity string 聯系地(dì / de)址城市
addressStreet string 聯系地(dì / de)址街道(dào)
addressPostalCode string 聯系地(dì / de)址郵政編碼
organization string 公司
title string 職位
workFaxNumber string 工作傳真
workPhoneNumber string 工作電話
workAddressCountry string 工作地(dì / de)址国家
workAddressState string 工作地(dì / de)址省份
workAddressCity string 工作地(dì / de)址城市
workAddressStreet string 工作地(dì / de)址街道(dào)
workAddressPostalCode string 工作地(dì / de)址郵政編碼
homeFaxNumber string 住宅傳真
homePhoneNumber string 住宅電話
homeAddressCountry string 住宅地(dì / de)址国家
homeAddressState string 住宅地(dì / de)址省份
homeAddressCity string 住宅地(dì / de)址城市
homeAddressStreet string 住宅地(dì / de)址街道(dào)
homeAddressPostalCode string 住宅地(dì / de)址郵政編碼

回調參數

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 firstName爲(wéi / wèi)空、或長度爲(wéi / wèi)0
101 參數json格式錯誤
102 用戶不(bù)允許該操作(沒有授予權限)

示例代碼

native.addPhoneContact({
    firstName:"Limi",
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

HCE能力:getHCEState()

判斷當前設備是(shì)否支持 HCE 能力

注意:目前,就(jiù)蘋果而(ér)言,該接口不(bù)會返回0

參數: 無

回調參數: 無

狀态碼說(shuō)明

說(shuō)明
-1 未知狀态
0 正常
1 當前設備不(bù)支持NFC
2 當前設備支持NFC,但系統NFC開關未開啓
3 當前設備支持NFC,但不(bù)支持HCE

示例代碼

native.getHCEState({
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

撥打電話:makePhoneCall()

參數

屬性 類型 默認值 必填 說(shuō)明
phoneNumber string 是(shì) 電話号碼

回調參數: 無

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 phoneNumber不(bù)合法
101 參數json格式錯誤
102 用戶不(bù)允許該操作

示例代碼

native.makePhoneCall({
    phoneNumber:"12345678901",
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

掃碼:scanCode()

參數:無

回調參數

屬性 類型 說(shuō)明
result string 掃描内容

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
1 用戶取消操作

示例代碼

native.scanCode({
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
        const { code } = ret

        if (code === 1) {
            // 用戶取消
        }
    }
})

toast提示:showToast()

參數

屬性 類型 默認值 必填 說(shuō)明
tip string 是(shì) 提示文字
image string 本地(dì / de)文件路徑
duration number 1500 提示時(shí)間,單位毫秒

回調參數: 無

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 tip不(bù)合法(空或長度爲(wéi / wèi)0)
101 image文件不(bù)存在(zài)、不(bù)支持的(de)图片格式
102 參數json格式錯誤

示例代碼

native.showToast({
    tip:"hello world",
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

toast提示:hideToast()

參數:無

回調參數

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功

示例代碼

native.hideToast({
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

導航錯誤碼

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 參數json格式錯誤
101 backgroundColor不(bù)合法
102 frontColor不(bù)合法
103 導航欄設置顯示,但按鈕的(de)title或者iconBase64缺失
104 導航欄設置顯示,但解碼iconBase64失敗
105 沒有找到(dào)webView的(de)控制器(webView可能不(bù)是(shì)通過控制器添加到(dào)屏幕的(de))
106 webview的(de)控制器是(shì)導航棧的(de)根,無法關閉
107 無法确定webview的(de)控制器如何添加到(dào)屏幕上(shàng)

設置導航欄顔色:setNavigationBarColor()

參數

屬性 類型 默認值 必填 說(shuō)明
frontColor string 是(shì) 前景色,當前僅支持十六進制的(de)RGB格式
backgroundColor string 是(shì) 背景色,當前僅支持十六進制的(de)RGB格式

回調參數: 無

狀态碼說(shuō)明

參見導航錯誤碼

示例代碼

native.setNavigationBarColor({
    frontColor:"#FF0000",
    backgroundColor:"#00FFFF",
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

設置導航欄标題:setNavigationBarTitle()

參數

屬性 類型 默認值 必填 說(shuō)明
title string 是(shì) 标題

回調參數: 無

狀态碼說(shuō)明

狀态碼 說(shuō)明
-1 其他(tā)錯誤
0 成功
100 參數json格式錯誤

示例代碼

native.setNavigationBarTitle({
    title:"page title"
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

設置導航欄内容:setNavigationBarContent()

參數

屬性 類型 默認值 必填 說(shuō)明
hide number 0 顯示/隐藏導航欄
1 : 隐藏(無動畫) 0:顯示(無動畫) 如果設置隐藏導航欄,則忽略其他(tā)參數
title string 标題
leftButton Object 左側标題 參見導航欄按鈕
rightButton Object 右側側标題 參見導航欄按鈕

導航欄按鈕(leftButton, rightButton):

屬性 類型 默認值 必填 說(shuō)明
hide number 0 顯示/隐藏導航欄
1 : 隐藏(無動畫) 0:顯示(無動畫) 如果設置隐藏,則忽略其他(tā)參數
title string 按鈕标題
優先顯示title
iconBase64 string 優先顯示title; 按鈕图标,Base64編碼
callback Function 點擊按鈕時(shí),調用前端的(de)方法名
方法接受一(yī / yì /yí)個(gè)參數,如果導航欄顯示,則該參數必填
callbackData string 點擊按鈕時(shí),調用前端的(de)方法接受的(de)參數
方法接受一(yī / yì /yí)個(gè)參數

回調參數: 無

狀态碼說(shuō)明

參見導航錯誤碼

示例代碼

native.setNavigationBarTitle({
    hide:0,
    title:"page title",
    leftButton: {
        title:"返回",
        callback:"closepage", //closepage接受一(yī / yì /yí)個(gè)參數
        callbackData:"123456"
    },
    rightButton: {
        hide:0
    },
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

關閉本頁面:navigationCloseThisPage()

參數

屬性 類型 默認值 必填 說(shuō)明
animated number 1 1 : 有動畫 0:無動畫

回調參數: 無

狀态碼說(shuō)明

參見導航錯誤碼

示例代碼

native.navigationCloseThisPage({
    animated: 10,
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

系統

異步獲取系統信息: getSystemInfo()

回調參數

屬性 類型 說(shuō)明
brand string 手機品牌
model string 手機型号
pixelRatio number 設備像素比
screenWidth number 屏幕寬度
screenHeight number 屏幕高度
windowWidth number 可使用窗口寬度
windowHeight number 可使用窗口高度
statusBarHeight number 狀态欄的(de)高度
language string 當前使用的(de)語言
system string 操作系統版本
platform string 客戶端平台
SDKVersion string Firefly版本

示例代碼

native.getSystemInfo({
    success: (ret) => {
        // 成功後的(de)回調
    },
    fail: (ret) => {
        // 失敗後的(de)回調
    },
    complete: (ret) => {
        // 接口調用完成後的(de)回調函數
    }
})

同步獲取系統信息: getSystemInfoSync()

返回值:

屬性 類型 說(shuō)明
brand string 手機品牌
model string 手機型号
pixelRatio number 設備像素比
screenWidth number 屏幕寬度
screenHeight number 屏幕高度
windowWidth number 可使用窗口寬度
windowHeight number 可使用窗口高度
statusBarHeight number 狀态欄的(de)高度
language string 當前使用的(de)語言
system string 操作系統版本
platform string 客戶端平台
SDKVersion string Firefly版本

示例代碼

const str = native.getSystemInfoSync()

同步獲取app版本: getAppVersion()

返回值:

屬性 類型 說(shuō)明
appVersion string app版本

示例代碼

const str = native.getAppVersion()

基礎

判斷Jsbridge是(shì)否在(zài)當前版本可用: hasNativeMethod()

判斷小程序的(de)API是(shì)否在(zài)當前版本可用。

參數

string

使用 ${API} 方式來(lái)調用

返回值

boolean

當前版本是(shì)否可用

示例代碼

const boolean = cmbc.hasNativeMethod('chooseImage')

console.log(boolean)
Copyright © 屯昌單支科技有限公司 2019 all right reserved,powered by Gitbook聯系方式: wanglihang@mskj.com
修訂時(shí)間: 2019-08-02 16:19:34

results matching ""

    No results matching ""