android bugly 坑位

說(shuō)明

騰訊Bugly则剃,為移動(dòng)開(kāi)發(fā)者提供專業(yè)的異常上報(bào)和運(yùn)營(yíng)統(tǒng)計(jì)耘柱,幫助開(kāi)發(fā)者快速發(fā)現(xiàn)并解決異常,同時(shí)掌握產(chǎn)品運(yùn)營(yíng)動(dòng)態(tài)棍现,及時(shí)跟進(jìn)用戶反饋调煎。
主要是三個(gè)功能

直接繼承

導(dǎo)入最新aar


image.png

初始化


image.png

這樣就把異常和升級(jí)都繼承了。

1己肮、先說(shuō)CrashReport 士袄,這樣后臺(tái)缺少

image.png

用戶id 和型號(hào)沒(méi)有。用戶id 是可以自己去定義的朴肺。

  CrashReport.setUserId("9527");
  CrashReport.setDeviceModel(appContext, "" + OtherUtils.getModel());

init 之前把這倆加上就 ok 了窖剑,如果 沒(méi)有用id 坚洽,登錄之后添加上也可以戈稿。

so符號(hào)表 Android平臺(tái)中,Debug SO文件是指具有調(diào)試信息的SO文件讶舰,其中包含用戶還原堆棧的符號(hào)信息鞍盗。
沒(méi)有用到,我覺(jué)得能用到so中的跳昼,都不差這個(gè)了吧般甲。

2、再說(shuō)版本更新
自定義UI

它的UI


image.png

我的UI

image.png

運(yùn)行之后的UI


image.png

這里我修改了


image.png

title鹅颊、banner敷存、版本更新內(nèi)容。

代碼如下

image.png

// 自動(dòng)更新。
Beta.autoCheckUpgrade = true;

    Beta.enableNotification = true;

//wifi 下自動(dòng)下載
Beta.autoDownloadOnWifi = true;
Beta.canShowApkInfo = true;

layout 中需要注意的是
添加android:tag="beta_upgrade_feature"

這里需要添加 五個(gè)


image.png

界面隨你寫(xiě)了锚烦。
替換banner 圖


image.png

這里寫(xiě)在start 里面的觅闽,create里面報(bào)錯(cuò)。

在init 之前進(jìn)行涮俄。蛉拙。

選擇他的原因是 每次可以有1,000,000 次的版本更新。
可以每個(gè)市場(chǎng)做一個(gè)彻亲,


image.png

渠道寫(xiě)一個(gè)華為小米o(hù)ppo登錄孕锄,這樣戳戳有余了吧。苞尝。畸肆。
自定義UI 這樣很好吧。

最后統(tǒng)計(jì)模塊看


image.png

錯(cuò)誤信息野来、bug信息統(tǒng)計(jì)數(shù)據(jù)恼除,很全了。就是當(dāng)天的看到會(huì)晚一會(huì)曼氛。豁辉。

強(qiáng)制和不強(qiáng)制功能


image.png

統(tǒng)計(jì)


image.png

api 的使用

Bugly.init(this, APP_ID, false);//初始化統(tǒng)一接口
 Beta.autoInit = true;//自動(dòng)初始化開(kāi)關(guān),true表示app啟動(dòng)自動(dòng)初始化升級(jí)模塊; false不會(huì)自動(dòng)初始化; 開(kāi)發(fā)者如果擔(dān)心sdk初始化影響app啟動(dòng)速度,可以設(shè)置為false舀患,在后面某個(gè)時(shí)刻手動(dòng)調(diào)用Beta.init(getApplicationContext(),false);
 Beta.autoCheckUpgrade = true;//true表示初始化時(shí)自動(dòng)檢查升級(jí); false表示不會(huì)自動(dòng)檢查升級(jí),需要手動(dòng)調(diào)用Beta.checkUpgrade()方法;
 Beta.upgradeCheckPeriod = 60 * 1000;//設(shè)置升級(jí)檢查周期為60s(默認(rèn)檢查周期為0s)徽级,60s內(nèi)SDK不重復(fù)向后臺(tái)請(qǐng)求策略);
 Beta.initDelay = 1 * 1000;//設(shè)置啟動(dòng)延時(shí)為1s(默認(rèn)延時(shí)3s),APP啟動(dòng)1s后初始化SDK聊浅,避免影響APP啟動(dòng)速度;
 Beta.largeIconId = R.drawable.ic_launcher;//設(shè)置通知欄大圖標(biāo),largeIconId為項(xiàng)目中的圖片資源;
 Beta.smallIconId = R.drawable.ic_launcher;//設(shè)置狀態(tài)欄小圖標(biāo)
 Beta.storageDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);//設(shè)置sd卡的Download為更新資源存儲(chǔ)目錄
Beta.canShowUpgradeActs.add(MainActivity.class);//添加可顯示彈窗的Activity,例如餐抢,只允許在MainActivity上顯示更新彈窗,其他activity上不顯示彈窗; 如果不設(shè)置默認(rèn)所有activity都可以顯示彈窗低匙。
Beta.autoDownloadOnWifi = true;//設(shè)置Wifi下自動(dòng)下載,默認(rèn)false
Beta.enableHotfix = true;//升級(jí)SDK默認(rèn)是開(kāi)啟熱更新能力的旷痕,如果你不需要使用熱更新,可以將這個(gè)接口設(shè)置為false顽冶。

其他

 /**
    * 手動(dòng)檢查更新(用于設(shè)置頁(yè)面中檢測(cè)更新按鈕的點(diǎn)擊事件)
    */
    public static synchronized void checkUpgrade()

    /**
    * 獲取本地已有升級(jí)策略(非實(shí)時(shí)欺抗,可用于界面紅點(diǎn)展示)
    *
    * @return
    */
    public static synchronized UpgradeInfo getUpgradeInfo()

    /**
    * @param isManual  用戶手動(dòng)點(diǎn)擊檢查,非用戶點(diǎn)擊操作請(qǐng)傳false
    * @param isSilence 是否顯示彈窗等交互强重,[true:沒(méi)有彈窗和toast] [false:有彈窗或toast]
    */
    public static synchronized void checkUpgrade(boolean isManual, boolean isSilence)

最后熱更新

image.png

我的版本不匹配绞呈,另外需要的是降低gradle 版本。否則很那在升上去了间景。
看到這個(gè)

Beta.betaPatchListener = new BetaPatchListener() {
            @Override
            public void onPatchReceived(String patchFileUrl) {
//                Toast.makeText(getApplicationContext(), patchFileUrl, Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onDownloadReceived(long savedLength, long totalLength) {
//                Toast.makeText(getApplicationContext(), String.format(Locale.getDefault(),
//                        "%s %d%%",
//                        Beta.strNotificationDownloading,
//                        (int) (totalLength == 0 ? 0 : savedLength * 100 / totalLength)), Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onDownloadSuccess(String patchFilePath) {
//                Toast.makeText(getApplicationContext(), patchFilePath, Toast.LENGTH_SHORT).show();
//                Beta.applyDownloadedPatch();
//                Beta.applyTinkerPatch(getApplicationContext(), patchFilePath);
            }

            @Override
            public void onDownloadFailure(String msg) {
//                Toast.makeText(getApplicationContext(), msg, Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onApplySuccess(String msg) {
//                Toast.makeText(getApplicationContext(), msg, Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onApplyFailure(String msg) {
//                Toast.makeText(getApplicationContext(), msg, Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onPatchRollback() {
//                Toast.makeText(getApplicationContext(), "onPatchRollback", Toast.LENGTH_SHORT).show();
            }
        };

我有了新思路了佃声。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市倘要,隨后出現(xiàn)的幾起案子圾亏,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,270評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件志鹃,死亡現(xiàn)場(chǎng)離奇詭異父晶,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)弄跌,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)甲喝,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人铛只,你說(shuō)我怎么就攤上這事埠胖。” “怎么了淳玩?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,630評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵直撤,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我蜕着,道長(zhǎng)谋竖,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,906評(píng)論 1 295
  • 正文 為了忘掉前任承匣,我火速辦了婚禮蓖乘,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘韧骗。我一直安慰自己嘉抒,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,928評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布袍暴。 她就那樣靜靜地躺著些侍,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,718評(píng)論 1 305
  • 那天慰枕,我揣著相機(jī)與錄音,去河邊找鬼挪捕。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播纽什,決...
    沈念sama閱讀 40,442評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼措嵌,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼躲叼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起企巢,我...
    開(kāi)封第一講書(shū)人閱讀 39,345評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤枫慷,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體或听,經(jīng)...
    沈念sama閱讀 45,802評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡探孝,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,984評(píng)論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了誉裆。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片顿颅。...
    茶點(diǎn)故事閱讀 40,117評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖足丢,靈堂內(nèi)的尸體忽然破棺而出粱腻,到底是詐尸還是另有隱情,我是刑警寧澤斩跌,帶...
    沈念sama閱讀 35,810評(píng)論 5 346
  • 正文 年R本政府宣布绍些,位于F島的核電站,受9級(jí)特大地震影響耀鸦,放射性物質(zhì)發(fā)生泄漏柬批。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,462評(píng)論 3 331
  • 文/蒙蒙 一袖订、第九天 我趴在偏房一處隱蔽的房頂上張望氮帐。 院中可真熱鬧,春花似錦洛姑、人聲如沸揪漩。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,011評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)奄容。三九已至,卻和暖如春产徊,著一層夾襖步出監(jiān)牢的瞬間昂勒,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,139評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工舟铜, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留戈盈,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,377評(píng)論 3 373
  • 正文 我出身青樓谆刨,卻偏偏與公主長(zhǎng)得像塘娶,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子痊夭,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,060評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 首先在Module:app/build.gredle下添加依賴集成SDK 如果只想集成單獨(dú)的異常上報(bào)可以將依賴改成...
    Time_x閱讀 1,864評(píng)論 1 0
  • ##騰訊Bugly 功能: 1.異常上報(bào)(上線后的APP 在用戶手中發(fā)送的bug看不到刁岸,這就用到Bugly,可以吧...
    Time_x閱讀 1,051評(píng)論 0 1
  • 前言 在很久以前她我,我講過(guò)了關(guān)于Bugly實(shí)現(xiàn)熱更新的文章虹曙,大家感興趣的話迫横,可參考以下文章:Bugly熱更新集成詳解...
    奔跑的佩恩閱讀 859評(píng)論 0 0
  • 用兩張圖告訴你,為什么你的 App 會(huì)卡頓? - Android - 掘金 Cover 有什么料酝碳? 從這篇文章中你...
    hw1212閱讀 12,732評(píng)論 2 59
  • 前言 在之前我已經(jīng)講過(guò)了一些關(guān)于App版本更新的文章矾踱,大家感興趣的話,可參考以下文章Kotlin筆記(67) — ...
    奔跑的佩恩閱讀 790評(píng)論 0 0