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

一文接入Android阿里Sophix熱更新

這篇具有很好參考價值的文章主要介紹了一文接入Android阿里Sophix熱更新。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

????????最近公司項目漸趨成熟,已經(jīng)不需要經(jīng)常更新版本,并且更新版本對客戶的影響特別大,但是日常維護難免需要更新代碼,因此熱修復(fù)的技術(shù),就比較迫切了。

? ? ? ? 經(jīng)過一段時間的對比,我們最終決定使用阿里的Sophix方案,因為它實在是太強大,而且接入及其簡單。

? ? ? ? 阿里網(wǎng)址如下:阿里云登錄 - 歡迎登錄阿里云,安全穩(wěn)定的云計算服務(wù)平臺

? ? ? ? ?應(yīng)用申請這些因為過于簡單,我這里就不說了,直接上代碼

1、引入官方庫,在app的build.gradle下,直接插入

 compile 'com.aliyun.ams:alicloud-android-hotfix:3.3.5'

2、心間自定義Application文件名為SophixStubApplication,繼承自SophixApplication,代碼如下:

public class SophixStubApplication extends SophixApplication {
    private final String TAG = "SophixStubApplication";
    // 此處SophixEntry應(yīng)指定真正的Application,并且保證RealApplicationStub類名不被混淆。
    @Keep
    @SophixEntry(自定義的Application.class)
    static class RealApplicationStub {}
    @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
//         如果需要使用MultiDex,需要在此處調(diào)用。
         MultiDex.install(this);
        initSophix();
    }
    private void initSophix() {
        String appVersion = "0.0.0";
        try {
            appVersion = this.getPackageManager()
                    .getPackageInfo(this.getPackageName(), 0)
                    .versionName;
        } catch (Exception e) {
        }
        final SophixManager instance = SophixManager.getInstance();
        instance.setContext(this)
                .setUsingEnhance() // 適配加固模式,如果app使用了加固則需要加上此方法
                .setAppVersion(appVersion)
                .setSecretMetaData(null, null, null)
                .setEnableDebug(true)
                .setEnableFullLog()
                .setPatchLoadStatusStub(new PatchLoadStatusListener() {
                    @Override
                    public void onLoad(final int mode, final int code, final String info, final int handlePatchVersion) {
                        if (code == PatchStatus.CODE_LOAD_SUCCESS) {
                            Log.i(TAG, "sophix load patch success!");
                        } else if (code == PatchStatus.CODE_LOAD_RELAUNCH) {
                            // 如果需要在后臺重啟,建議此處用SharePreference保存狀態(tài)。
                            Log.i(TAG, "sophix preload patch success. restart app to make effect.");
                        }
                    }
                }).initialize();
        instance.queryAndLoadNewPatch();
    }
}

簡單說一下這里,基本是固定格式,最重要的代碼是

instance.queryAndLoadNewPatch();

顧名思義,查詢并加載新的補丁。這個一定要調(diào)用的,不然無法加載補丁,記得把SophixStubApplication注冊到AndroidManifest.xml中,舉個例子:

 <application
        android:name="xxxxxx.SophixStubApplication"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:maxAspectRatio="2.4"
        android:resizeableActivity="true"
        android:supportsRtl="true"
        android:theme="@style/AppTheme"
        android:usesCleartextTraffic="true">


 <meta-data
            android:name="com.taobao.android.hotfix.IDSECRET"
            android:value="" />
        <meta-data
            android:name="com.taobao.android.hotfix.APPSECRET"
            android:value="" />
        <meta-data
            android:name="com.taobao.android.hotfix.RSASECRET"
            android:value="" />

</application>

這樣一套下來,阿里云熱修復(fù)就已經(jīng)成功集成到app中。

接再來再說說一些注意事項

1、不能熱更新的場景

????????1)、新增四大組件

? ? ? ? 2)、修改了SophixStubApplication的內(nèi)容

? ? ? ? 3)、修改了AndroidManifest.xml的內(nèi)容

? ? ? ? 4)、其他配置文件

? ? ? ? 除此之外,其他的一切皆可更新,包括.so文件

2、關(guān)于加固的app,如果采用了加固,去打補丁的時候一定要拿未加固前的apk去操作,否則無法加固文章來源地址http://www.zghlxwxcb.cn/news/detail-718543.html

到了這里,關(guān)于一文接入Android阿里Sophix熱更新的文章就介紹完了。如果您還想了解更多內(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īng)查實,立即刪除!

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

相關(guān)文章

  • Unity2021接入訊飛語音聽寫(Android)

    Unity2021接入訊飛語音聽寫(Android)

    使用的引擎工具: Unity2021.3.19 android-studio-2021.1.21 第一步: 新建一個Android項目(工程名字隨便啦) 然后新建一個library (同上,庫名自己命名吧) Android環(huán)境目前就算是初步建立好了。 第二步: 導(dǎo)包 libs文件夾里面放入這4個文件,arm64-v8a,armeabi-v7a,Msc.jar這三個文件是訊飛官

    2024年02月06日
    瀏覽(14)
  • Unity與Android交互(4)——接入SDK

    Unity與Android交互(4)——接入SDK

    【前言】 unity接入Android SDK有兩種方式,一種是把Unity的工程導(dǎo)出google project的形式進行接入,另一種是通過把Android的工程做成Plugins的形式進行接入。我們接入SDK基本都是將SDK作為插件的形式接入的。 對我們接入SDK的人來說,SDK也是分等級的: 第一等級:只有so文件,這種

    2024年02月16日
    瀏覽(25)
  • Unity接入IAP內(nèi)購(Android,IOS)最新流程,第一篇:內(nèi)購接入

    Unity接入IAP內(nèi)購(Android,IOS)最新流程,第一篇:內(nèi)購接入

    你好! 這將是一個系列的文章 第一篇 介紹客戶端里支付的調(diào)起以及購買。 第二篇 介紹后臺對購買結(jié)果的驗證以及發(fā)貨(IOS)。 第三篇 介紹后臺對購買結(jié)果的驗證以及發(fā)貨(Android)。 第四篇 介紹后臺對內(nèi)購?fù)藛螁栴}的處理(IOS欺詐檢測以及欺詐信息反饋)。 我們是用的

    2024年04月13日
    瀏覽(21)
  • Android 沾包處理,以串口接入為例 (usb-serial-for-android)

    Android 沾包處理,以串口接入為例 (usb-serial-for-android)

    我們在通過串口、 TCP 、 UDP 等方式接收協(xié)議的時候,由于單次接收數(shù)據(jù)有限,導(dǎo)致一條命令可能被分割成多次進行接收。 這種情況下,就需要進行沾包處理,使多次接收的數(shù)據(jù),合并成一條數(shù)據(jù)。本文通過博主本人一個真實的工作案例,實例講解Android串口的接入和對于沾包

    2023年04月16日
    瀏覽(23)
  • gromore穿山甲接入激勵視頻Android 原生

    gromore穿山甲接入激勵視頻Android 原生

    第一步:準(zhǔn)備好,穿山甲的gromore廣告的appid,廣告ID(注:廣告ID和代碼位ID要區(qū)分好),參考下圖 第二步:引入sdk 在build.gradle項目中 repositories { ? ? ? ? google() ? ? ? ? jcenter() ? ? ? ? mavenCentral() ? ? ? ? maven { ? ? ? ? ? ? url \\\'https://artifact.bytedance.com/repository/pangle\\\' ? ? ? ?

    2023年04月13日
    瀏覽(26)
  • Unity Android平臺接入支付寶支付全流程

    Unity Android平臺接入支付寶支付全流程

    ??Unity3D接入支付寶支付的流程非常復(fù)雜,涉及到很多方面(有任何問題都可以在評論區(qū)留言,我盡量盡快回復(fù))所以寫篇文章記錄一下。支付寶支付和微信支付以及其它支付差不多,但是支付寶有沙箱環(huán)境,可以很方便地調(diào)試,所以選用支付寶平臺作為演示。 ??此教程

    2024年04月29日
    瀏覽(19)
  • Android | 教你如何使用HwCameraKit接入相機人像模式

    ??HwCameraKit為開發(fā)者提供了一套兼容EMUI的相機能力開放接口,開發(fā)者可以通過HwCameraKit使自己的應(yīng)用快速接入華為相機的私有能力,擴展應(yīng)用的拍攝功能,為用戶提供更好拍攝體驗。 ??人像模式為HwCameraKit開放的多種相機模式其中之一,它將允許您: 獲取華為相機的人像

    2024年02月22日
    瀏覽(16)
  • Unity 歐盟UMP用戶隱私協(xié)議Android接入指南

    Unity 歐盟UMP用戶隱私協(xié)議Android接入指南

    Google 歐盟地區(qū)用戶意見征求政策 UMPSDK接入文檔 mainTemplate.gradle 中引入 項目路徑下 Assets/Plugins/Android/mainTemplate.gradle CustomUnityPlayerActivity 導(dǎo)入UMP相關(guān)的包 java類中新增字段 初始化UMPSDK方法 在下面代碼注釋 “加載廣告”的地方處理你的開屏廣告 調(diào)用 測試 TEST-DEVICE-HASHED-ID 為你的

    2024年02月03日
    瀏覽(31)
  • 【Android -- 開源庫】騰訊 TBS 瀏覽器 SDK 接入

    在 Android 開發(fā)項目中,經(jīng)常會用到 Webview 。而 WebView 是出了名的坑,各種 Bug。騰訊 TBS 瀏覽服務(wù)面向應(yīng)用開發(fā)商和廣大開發(fā)者,提供瀏覽增強,內(nèi)容框架,廣告體系,H5游戲分發(fā),大數(shù)據(jù)等服務(wù),能夠幫助應(yīng)用開發(fā)商大幅改善應(yīng)用體驗,有效提升開發(fā),運營,商業(yè)化的效率。

    2024年02月11日
    瀏覽(23)
  • Unity使用Android Stdio接入SDK制作AAR包

    Unity使用Android Stdio接入SDK制作AAR包

    最近需要在Unity2021版本中接入SDK,發(fā)現(xiàn)和直接接入SDK有些區(qū)別,這里把接入的流程記錄一下。 Unity在最新的版本中把UnityPlayActivity.java,從Class.jar中移除,需要在Unity的工程內(nèi)找到這個文件,并把其加入到Android Stadio內(nèi),才能使用。 ①選擇Android Library ②包名要和Unity工程里面相

    2024年02月10日
    瀏覽(16)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包