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

Android框架mqtt庫無法兼容高版本android13的問題

這篇具有很好參考價值的文章主要介紹了Android框架mqtt庫無法兼容高版本android13的問題。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

最近使用mqtt庫,測試的時候發(fā)現(xiàn)在Android12及以下正常,但在13上閃退,閃退日志如下

java.lang.IllegalArgumentException: com.yummo.xcar: Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.

提示很明顯是version 31版本在創(chuàng)建PendingIntent的時候需要做適配,于是全局搜索把適配代碼加上,代碼如下

PendingIntent pendingIntent;
                    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
                        pendingIntent = PendingIntent.getBroadcast(getApplication().getApplicationContext(), 0, activityIntent, PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT);
                    } else {
                        pendingIntent = PendingIntent.getBroadcast(getApplication().getApplicationContext(), 0, activityIntent, PendingIntent.FLAG_UPDATE_CURRENT);
                    }

加上之后還是報同樣的錯誤,幾經(jīng)周折才發(fā)現(xiàn)mqtt庫里也用到了PendingIntent且沒有做適配,我所使用的mqtt版本如下:

api "org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.1.0"
api "org.eclipse.paho:org.eclipse.paho.android.service:1.1.1"

本想著去官方庫里看下有沒有最新的已經(jīng)適配的庫,去了官網(wǎng)才發(fā)現(xiàn)最后一個版本已停留在2017年,痛苦~,官網(wǎng)鏈接:mqtt-service,找了好久~好在后面找到一篇文章找到了替代方案:兼容方案,具體替換方式參考該鏈接吧,替換庫的下載地址,替換完成后將舊的引用包刪除并重新導(dǎo)入進(jìn)行編譯,結(jié)果又報了另外一個庫找不到,于是我又根據(jù)日志添加了對應(yīng)的依賴庫

api 'com.jakewharton.timber:timber:4.7.1'

重新編譯后終于可以了?。?!

但是該庫創(chuàng)建的mqttservice銷毀再重建時會有數(shù)據(jù)庫異常導(dǎo)致的閃退問題,需要注意,最后總算是解決了,網(wǎng)上關(guān)于mqtt適配高版本的文章太少了,希望能給遇到同樣問題的朋友一點幫助文章來源地址http://www.zghlxwxcb.cn/news/detail-732143.html

到了這里,關(guān)于Android框架mqtt庫無法兼容高版本android13的問題的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 高通 Android 8/9/12/13 兼容U盤識別extfat模式

    高通 Android 8/9/12/13 兼容U盤識別extfat模式

    Android本身不支持extfat格式 需要通過nofuse 打kernel補(bǔ)丁方式去實現(xiàn)? Android 8/9 1、kernel/msm-4.9/arch/arm64/configs/sdm670-perf_defconfig 增加代碼如下( 需要提交編譯kernel記得git add?sdm670-perf_defconfig 不需要commit哈!否則編譯會還原這個文件,切記!) 2、kernel/msm-4.9/arch/arm64/configs/sdm670_def

    2024年02月04日
    瀏覽(110)
  • Android保存圖片到相冊,兼容Android10及以上版本

    Android 共享存儲空間 訪問共享存儲空間中的媒體文件 MediaStore是android系統(tǒng)提供的一個多媒體數(shù)據(jù)庫,專門用于存放多媒體信息的,通過ContentResolver即可對數(shù)據(jù)庫進(jìn)行操作。 MediaStore.Files: 共享的文件,包括多媒體和非多媒體信息; MediaStore.Audio: 存放音頻信息; MediaStore.Image: 存放

    2024年02月11日
    瀏覽(28)
  • Android app兼容低版本Java環(huán)境

    原文地址: Android app兼容低版本Java環(huán)境 - Stars-One的雜貨小窩 起因是修復(fù)一個Bug遇到的問題,找到了一個可以讓app兼容低版本java的方法 眾所周知,Android版本更新后,其內(nèi)置的JRE環(huán)境也隨之更新了 假如我們在app中用到了JDK8的特有的屬性,而用戶的手機(jī)設(shè)備系統(tǒng)還是比較低,而沒有JR

    2024年02月05日
    瀏覽(16)
  • Android的Gradle、Studio、Java、Kotlin版本兼容

    Android Gradle 插件和 Android Studio 兼容性 Android Studio 版本 所需插件版本 Hedgehog - 2023.1.1 3.2-8.2 Giraffe - 2022.3.1 3.2-8.1 Flamingo - 2022.2.1 3.2-8.0 Electric Eel - 2022.1.1 3.2-7.4 Dolphin - 2021.3.1 3.2-7.3 Chipmunk - 2021.2.1 3.2-7.2 Bumblebee - 2021.1.1 3.2-7.1 Arctic Fox - 2020.3.1 3.1-7.0 Gradle版本和Java版本對應(yīng)關(guān)系 Ja

    2024年02月09日
    瀏覽(21)
  • Android 13 - Media框架(13)- OpenMax(一)

    這一節(jié)我們將了解Android OpenMax框架,該框架了解完成之后,我們會再回過頭去了解 ACodec,將 MediaCodec - ACodec - OpenMax 連接起來,了解組件的創(chuàng)建控制以及 buffer 的流轉(zhuǎn)。 本篇屬于個人學(xué)習(xí)筆記,如有錯誤歡迎指出。 我將Android OpenMax框架分為3個部分來學(xué)習(xí): media.codec service:

    2024年02月06日
    瀏覽(21)
  • Android 13 版本變更總覽

    https://developer.android.google.cn/about/versions/13?hl=zh-cn 文章基于官方資料上提取 https://developer.android.google.cn/about/versions/13/summary?hl=zh-cn https://developer.android.google.cn/about/versions/13/behavior-changes-all?hl=zh-cn 性能和電池 前臺服務(wù) (FGS) 任務(wù)管理器 (https://developer.android.google.cn/guide/components/f

    2024年02月07日
    瀏覽(22)
  • Android 13 - Media框架(31)- ACodec(七)

    之前的章節(jié)中我們解了 input buffer 是如何傳遞給 OMX 的,以及Output buffer 是如何分配并且注冊給 OMX 的。這一節(jié)我們就來看ACodec是如何處理OMX的Callback的。 這一節(jié)我們只大致記錄Callback是如何傳遞給ACodec的。在之前的學(xué)習(xí)中我們了解到OMXNodeInstance中會有一個專門的線程來處理OM

    2024年01月19日
    瀏覽(45)
  • Android13 --- POST_NOTIFICATIONS權(quán)限無法關(guān)閉

    Android13 --- POST_NOTIFICATIONS權(quán)限無法關(guān)閉

    ? ?Android 13(API 級別 33)及更高版本支持用于從應(yīng)用發(fā)送非豁免(包括前臺服務(wù) [FGS])通知的運行時權(quán)限:POST_NOTIFICATIONS。此更改有助于用戶專注于最重要的通知。 通知運行時權(quán)限 ?|? Android 開發(fā)者 ?|? Android Developers ? ?在Android 13的平臺,應(yīng)用如果想發(fā)送通知,則要申請

    2024年02月11日
    瀏覽(20)
  • Android 13 - Media框架(9)- NuPlayer::Decoder

    Android 13 - Media框架(9)- NuPlayer::Decoder

    這一節(jié)我們將了解 NuPlayer::Decoder,學(xué)習(xí)如何將 MediaCodec wrap 成一個強(qiáng)大的 Decoder。這一節(jié)會提前講到 MediaCodec 相關(guān)的內(nèi)容,如果看不大懂可以先跳過此篇。原先覺得 Decoder 部分簡單,越讀越發(fā)現(xiàn)自己的無知,Android 源碼真是一個巨大的寶庫! ps:本文中大寫的 Decoder 指代的是

    2024年02月09日
    瀏覽(20)
  • Android 13 - Media框架(10)- NuPlayer::Renderer

    這一節(jié)我們來了解 NuPlayer Renderer 是如何工作,avsync 機(jī)制是如何運行的。 調(diào)用 NuPlayer start 方法后會創(chuàng)建 Renderer,傳入?yún)?shù)為 callback message、AudioSink、MediaClock 以及 flags??梢钥吹?NuPlayer 中也用一個 generation 來管理 Renderer 的狀態(tài),如不了解 generation 是如何使用的,可以看前面一

    2024年02月09日
    瀏覽(13)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包