国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

uniapp開發(fā)安卓App注意事項(xiàng)(HTML5+規(guī)范 plus調(diào)用安卓原生能力:廣播,掃描,相機(jī)等)

這篇具有很好參考價(jià)值的文章主要介紹了uniapp開發(fā)安卓App注意事項(xiàng)(HTML5+規(guī)范 plus調(diào)用安卓原生能力:廣播,掃描,相機(jī)等)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

uniapp開發(fā)安卓App注意事項(xiàng)

  • 使用安卓調(diào)試基座進(jìn)行調(diào)試大大降低了uniapp開發(fā)安卓app的門檻

  • 安卓開發(fā)經(jīng)常需要調(diào)用到安卓原生的api,例如廣播,掃碼,相機(jī)等等,uniapp內(nèi)置了App端的HTML5+規(guī)范,可以使用js直接調(diào)用豐富的原生能力。例如在安卓中調(diào)用原生的激光掃描能力:

    let main, receiver, filter, intentInstance
    let scanFlag = false // 是否開啟了激光掃描,默認(rèn)關(guān)閉
    
    /**
     * 初始化激光掃描
     * @param {String} broadcastAction 廣播動(dòng)作
     * @param {String} broadcastTag 廣播標(biāo)簽
     */
    function initScan(broadcastAction, broadcastTag) {
    	// 條件編譯 HTML5+ 擴(kuò)展規(guī)范,否則運(yùn)行到h5、小程序等平臺(tái)會(huì)出現(xiàn) plus is not defined 錯(cuò)誤
    	// #ifdef APP-PLUS
    	// 獲取Android主Activity
    	main = plus.android.runtimeMainActivity()
    	// 獲取Android意圖過(guò)濾類
    	let IntentFilter = plus.android.importClass('android.content.IntentFilter')
    	// 實(shí)例化意圖過(guò)濾
    	filter = new IntentFilter()
    	// 獲取意圖廣播,addAction內(nèi)改為廣播動(dòng)作
    	filter.addAction(broadcastAction)
    	receiver = plus.android.implements('io.dcloud.feature.internal.reflect.BroadcastReceiver', {
    		onReceive: function (context, intent) {
    			plus.android.importClass(intent)
    			// getStringExtra內(nèi)改為廣播標(biāo)簽
    			let code = intent.getStringExtra(broadcastTag)
    			console.log('廣播監(jiān)聽掃描信息 ==== code :', code)
    			emits('getCode', code)
    		}
    	})
    
    	// #endif
    }
    
    function startScan() {
    	// #ifdef APP-PLUS
    	if (!scanFlag) {
    		main.registerReceiver(receiver, filter)
    		console.log('==== 開啟掃描')
    		scanFlag = true
    	}
    	// #endif
    }
    
    function stopScan() {
    	// #ifdef APP-PLUS
    	if (scanFlag) {
    		main.unregisterReceiver(receiver)
    		console.log('==== 關(guān)閉掃描')
    		scanFlag = false
    	}
    	// #endif
    }
    
    
    /**
     * 手動(dòng)調(diào)用掃描 (非PDA物理按鍵)
     * @param {Object} keyAction 按鍵廣播動(dòng)作
     */
    function clickToScan(keyAction) {
    	// #ifdef APP-PLUS
    	// 獲取Android意圖類
    	let Intent = plus.android.importClass('android.content.Intent')
    	// 實(shí)例化意圖
    	intentInstance = new Intent()
    	// 定義意圖,模擬按下激光的物理按鍵映射,由廠商提供
    	intentInstance.setAction(keyAction)
    	// 廣播這個(gè)意圖
    	main.sendBroadcast(intentInstance)
    	// #endif
    }
    
    onMounted(() => {
    	// PDA設(shè)備 (廠商提供) 廣播動(dòng)作:android.intent.ACTION_DECODE_DATA,廣播標(biāo)簽:barcode_string
    	initScan('android.intent.ACTION_DECODE_DATA', 'barcode_string')
    	// 開啟掃描
    	startScan()
    })
    
    onUnmounted(() => {
    	// 關(guān)閉掃描
    	stopScan()
    })
    

    該plus對(duì)象便是uniapp內(nèi)置的HTML5+規(guī)范,無(wú)需引入,直接使用,但是建議搭配條件編譯寫法,否則會(huì)在其他端報(bào) plus is not defined 錯(cuò)誤

    HTML5+官方文檔 HTML5+規(guī)范

  • 除了使用HTML5+規(guī)范調(diào)用安卓原生能力,uniapp官方也對(duì)uni對(duì)象內(nèi)置了相關(guān)設(shè)備方法

    官方文檔 系統(tǒng)設(shè)備

    例如調(diào)用相機(jī)掃碼文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-841624.html

    function onCameraScan() {
    	// #ifdef APP
    	uni.scanCode({
    		success: function (res) {
    			scanCode.value = res.result
    			console.log('掃描成功--->', scanCode.value)
    		},
    		fail: function (err) {
    			console.log('掃描失敗--->', err)
    		},
    		complete: function (res) {
    			console.log('掃描完成--->', res)
    		}
    	})
    
    	// #endif
    }
    

到了這里,關(guān)于uniapp開發(fā)安卓App注意事項(xiàng)(HTML5+規(guī)范 plus調(diào)用安卓原生能力:廣播,掃描,相機(jī)等)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • uniapp之boundingClientRect注意事項(xiàng)

    1.頁(yè)面中使用 2.組件中使用增加 in(this) 或使用 this.createSel..... ? 3.其他寫法 4.boundingClientRect返回值為null ? ?1.確保頁(yè)面已經(jīng)渲染完成再計(jì)算高度,即已存在該id標(biāo)識(shí)的元素,常見(jiàn)解決辦法是 增加定時(shí)器延遲100ms,或在onLoad中去調(diào)用。 ? ?2.對(duì)view動(dòng)態(tài)設(shè)置id時(shí), 確保id首位是字母

    2024年02月11日
    瀏覽(17)
  • 個(gè)人首次使用UniAPP使用注意事項(xiàng)以及踩坑

    個(gè)人首次使用UniAPP使用注意事項(xiàng)以及踩坑

    uni-create-view 快速nui-app頁(yè)面的 uni-helper uni-app代碼提示的 uniapp小程序擴(kuò)展 鼠標(biāo)懸停查文檔 TypeScript Vue Plugin (Volar) Vue Language Features (Volar) Eslint Prettier 禁用 Error Lens 行內(nèi)提示報(bào)錯(cuò) Turbo Console Log 打log插件 Code Spell Checker 檢查拼寫插件 files.associations 官網(wǎng)解釋: https://cn.vuejs.org/guide/t

    2024年02月11日
    瀏覽(23)
  • 微信小程序轉(zhuǎn)uni-app注意事項(xiàng)

    微信小程序轉(zhuǎn)uni-app注意事項(xiàng)

    ????????如果你手頭上有一套微信小程序的代碼,怎樣把它變成一個(gè)網(wǎng)頁(yè)版或者app版本的呢?我推薦你使用uni-app。 ? ? ? ? 使用uni-app可以很方便的將微信小程序代碼翻譯成uni-app項(xiàng)目,通過(guò)uni-app項(xiàng)目又可以編譯成h5、app或微信小程序版本。這樣一來(lái),寫一份代碼同時(shí)可以

    2024年02月04日
    瀏覽(17)
  • RabbitMQ開發(fā)注意事項(xiàng)

    在使用 RabbitMQ 進(jìn)行消息隊(duì)列的開發(fā)過(guò)程中,有一些注意事項(xiàng)需要牢記: 安全性:確保正確配置 RabbitMQ 實(shí)例的安全性。限制對(duì) RabbitMQ 服務(wù)器的訪問(wèn)權(quán)限,并使用安全的認(rèn)證機(jī)制(如用戶名和密碼)來(lái)保護(hù)連接。 錯(cuò)誤處理:在消費(fèi)者端,務(wù)必處理可能發(fā)生的異?;蝈e(cuò)誤情況。

    2024年02月07日
    瀏覽(23)
  • Android小白開發(fā)注意事項(xiàng)

    Android小白開發(fā)注意事項(xiàng)

    1.設(shè)置第三方依賴包 ? 2.第一次加載編譯 ??3.apk打包 ? ?這個(gè)簽名文件的密碼在app級(jí)別的build.gradle里面 ? 然后下一步選你要打的環(huán)境的包,release是發(fā)行包,一個(gè)給別人安裝打這個(gè),debug是調(diào)試包,會(huì)比release包大,并且會(huì)有點(diǎn)卡一般是開發(fā)調(diào)試用的,這個(gè)可以多選。 ? ?環(huán)境

    2024年02月16日
    瀏覽(25)
  • 【Docker】 Docker 開發(fā)注意事項(xiàng)

    在使用 Docker 進(jìn)行開發(fā)時(shí),需要注意以確保開發(fā)過(guò)程順利和高效: 1. 了解 Docker 基礎(chǔ):在開始之前,了解 Docker 的基本概念,如鏡像(Images)、容器(Containers)、倉(cāng)庫(kù)(Repositories)和 Dockerfile 的基本語(yǔ)法。 2. 編寫清晰的 Dockerfile:Dockerfile 應(yīng)該清晰、簡(jiǎn)潔,并且易于理解。確保

    2024年02月03日
    瀏覽(21)
  • [游戲開發(fā)][虛幻5]新建項(xiàng)目注意事項(xiàng)

    [游戲開發(fā)][虛幻5]新建項(xiàng)目注意事項(xiàng)

    鼠標(biāo)右鍵點(diǎn)擊Client.uproject文件,可以看到三個(gè)比較關(guān)鍵的選項(xiàng), 啟動(dòng)游戲, 生成sln解決方案, 切換引擎版本 斷點(diǎn)調(diào)試?C++代碼重要步驟 如果你想斷點(diǎn)調(diào)試C++代碼,則必須使用使用代碼編譯啟動(dòng)引擎,你需要做幾個(gè)操作 1:把你的游戲作為啟動(dòng)項(xiàng)。如果你不設(shè)置,則默認(rèn)打開

    2024年02月22日
    瀏覽(44)
  • RabbitMQ基本使用及企業(yè)開發(fā)中注意事項(xiàng)

    RabbitMQ基本使用及企業(yè)開發(fā)中注意事項(xiàng)

    目錄 一、基本使用 二、使用注意事項(xiàng) 1. 生產(chǎn)者重連機(jī)制 - 保證mq服務(wù)是通的 2. 生產(chǎn)者確認(rèn)機(jī)制 - 回調(diào)機(jī)制 3. MQ的可靠性 4. Lazy Queue模式 5. 消費(fèi)者確認(rèn)機(jī)制 部署完RabbitMQ有兩種使用方式: 網(wǎng)頁(yè)客戶端 Java代碼 MQ組成部分: 虛擬主機(jī) - 進(jìn)行數(shù)據(jù)隔離的,好比mysql中的不同數(shù)據(jù)庫(kù)

    2024年04月26日
    瀏覽(26)
  • 02【保姆級(jí)】-GO語(yǔ)言開發(fā)注意事項(xiàng)(特色重點(diǎn))

    02【保姆級(jí)】-GO語(yǔ)言開發(fā)注意事項(xiàng)(特色重點(diǎn))

    之前我學(xué)過(guò)C、Java、Python語(yǔ)言時(shí)總結(jié)的經(jīng)驗(yàn): 先建立整體框架,然后再去摳細(xì)節(jié)。 先Know how,然后know why。 先做出來(lái),然后再去一點(diǎn)點(diǎn)研究,才會(huì)事半功倍。 適當(dāng)?shù)泥駠魍虠?。因?yàn)樗罁改硞€(gè)知識(shí)點(diǎn)很浪費(fèi)時(shí)間的。 對(duì)于GO語(yǔ)言,切記遵守語(yǔ)法格式規(guī)則。(例如python語(yǔ)言、例如

    2024年02月06日
    瀏覽(20)
  • Unity3D開發(fā)流程及注意事項(xiàng)

    Unity3D開發(fā)流程及注意事項(xiàng)

    使用Unity3D開發(fā)游戲需要遵循一定的流程和注意事項(xiàng),以確保項(xiàng)目的順利進(jìn)行并獲得良好的結(jié)果。以下是一般的游戲開發(fā)流程以及一些注意事項(xiàng),希望對(duì)大家有所幫助。北京木奇移動(dòng)技術(shù)有限公司,專業(yè)的軟件外包開發(fā)公司,歡迎交流合作。 游戲開發(fā)流程: 1.概念和計(jì)劃階段

    2024年02月09日
    瀏覽(21)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包