JavaBuildPath->Libraries,然后點擊AddExternalJARs...選擇指向jar的路徑,點擊OK,即' />
Android自動更新
本文檔幫助您以最快速最簡潔的方式集成使用自動更新組件。
下載最新版SDK的zip包,將其中的libs
文件夾合并到本地工程libs
子目錄下。
Eclipse
用戶右鍵工程根目錄,選擇Properties -> Java Build Path -> Libraries
,然后點擊Add External JARs...
選擇指向jar的路徑,點擊OK
,即導入成功。
注意
Eclipse ADT 17 以上版本用戶,不要通過上述步驟手動添加jar包引用。請在工程目錄下建一個文件夾
libs
,把jar包直接拷貝到這個文件夾下,再在Eclipse里面刷新一下工程就好了。詳情請參考Dealing with dependencies in Android projects.
libs目錄下的libs/armeabi/libbspatch.so
文件是用于支持增量更新功能的庫文件,也需要在eclipse中添加。
將SDK提供的res
文件夾拷入工程目錄下, 和工程本身res
目錄合并。請不要隨便刪除其中的文件。
提示
友盟SDK提供的資源文件都以
umeng_
開頭。
3.1 打開AndroidManifest.xml
,添加SDK需要的權限到
標簽下:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE">uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE">uses-permission>
<uses-permission android:name="android.permission.INTERNET">uses-permission>
android.permission.WRITE_EXTERNAL_STORAGE
權限允許將下載的apk保存到sd卡中。
android.permission.ACCESS_NETWORK_STATE
權限允許檢查網(wǎng)絡狀態(tài),從而根據(jù)不同網(wǎng)絡環(huán)境決定何種下載策略,務必添加該權限。
3.2 添加APPKEY和渠道到
標簽下: (如果已經(jīng)集成了統(tǒng)計SDK等友盟其他服務,不需要重復添加APPKEY)
<meta-data android:value="YOUR APP KEY" android:name="UMENG_APPKEY"/>
<meta-data android:value="Channel ID" android:name="UMENG_CHANNEL"/>
UMENG_APPKEY:用來定位該應用的唯一性,用您該應用的UMENG APPKEY,替換value中的"YOUR APP KEY"。
UMENG_CHANNEL:用來標注應用推廣渠道,不同渠道可以上傳不同更新包,您可以使用20位以內(nèi)的英文和數(shù)字為渠道定名,替換value中的"Channel ID"。如果不改動,將代表默認渠道。
渠道ID
請參考第5節(jié)如何上傳APK。
3.3 添加Service和Activity到
標簽下: (請注意:v2.4的SDK中,對話框改為Activity實現(xiàn))
注意
com.umeng包名可能有變,如果不能下載,請檢查包名,替換成正確的包名。
<service
android:name="com.umeng.update.net.DownloadingService"
android:process=":DownloadingService" >
service>
<activity
android:name="com.umeng.update.UpdateDialogActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar" >
activity>
主要應用場景:最常見的自動更新模式,當用戶進入應用首頁后,如果處于wifi環(huán)境
則檢測更新,如果有更新,彈出對話框提示有新版本,用戶點選更新開始下載更新。
在應用程序入口Activity
里的OnCreate()
方法中調(diào)用
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
UmengUpdateAgent.update(this);
注意
考慮到用戶流量的限制,目前我們默認在Wi-Fi接入情況下才進行自動提醒。如需要在任意網(wǎng)絡環(huán)境下都進行更新自動提醒,則請在
update
調(diào)用之前添加以下代碼:UmengUpdateAgent.setUpdateOnlyWifi(false)
。 特別提示:針對機頂盒等可能不支持或者沒有無線網(wǎng)絡的設備, 請同樣添加上述代碼。
public static void update(Context context)
v2.4版本之后的SDK中,您可以傳入當前Activity的Context,也可以傳入Application的Context。
如果開發(fā)者已經(jīng)有了最新的APK版本,只要上傳到友盟網(wǎng)站,同時客戶端版本的版本號(VersionCode)小于上傳的最新版本,客戶端在啟動時就會有更新提示。
上傳位置:登錄友盟開發(fā)者后臺,在左上角選擇應用后,右邊可以看到統(tǒng)計分析
、組件
、管理
三部分。點擊組件
,左側就會出現(xiàn)自動更新
條目。請點擊進入,即可找到上傳的入口。
注意
上傳APK前,請檢查其VersionCode是否大于舊版本的。 新版本與老版本的簽名要保持一致,否則安卓系統(tǒng)將會提示安裝失敗,無法升級。
如果需要按渠道更新,需要集成友盟統(tǒng)計SDK,在設置了上述3.2中的渠道ID之后,才能夠在“統(tǒng)計分析”-“管理”-“渠道”中看到對應的渠道ID,然后才能在自動更新服務中使用。
v2.4版本以后的SDK中默認開啟了集成檢測功能,在調(diào)用任意的更新接口后,我們將替您自動檢查上述集成過程中2、3兩個步驟是否被正確完成。 如果正確完成不會出現(xiàn)任何提示,否則會以如下的toast提示您。
你可以通過調(diào)用UmengUpdateAgent.setUpdateCheckConfig(false)
來禁用此功能。
toast的含義如下:
"Please copy all resources (res/) from SDK to your project!":請檢查是不是把res文件夾下所有的資源文件都放到了工程中。
"Please add Permission in AndroidManifest!":請檢查上述步驟3.1中的相關權限是否正確添加。
"Please add Activity in AndroidManifest!":請檢查上述步驟3.3中的Activity是否正確添加。
"Please add Service in AndroidManifest!":請檢查上述步驟3.3中的Service是否正確添加。
"Please set umeng appkey!":請檢查上述步驟3.2中的APPKEY是否正確添加。
在完成上面的步驟之后,在您的終端上啟動應用,就可以看到彈出的自動更新提示對話框。
一、如何在代碼中決定用增量更新還是全量更新?
調(diào)用setDeltaUpdate(boolean deltaUpdate)設置,默認true,設為false則為全量更新。
二、手機連接到WiFi網(wǎng)絡, 更新提示"非WiFi"環(huán)境?
請?zhí)砑泳W(wǎng)絡狀態(tài)檢查所需權限:android.permission.ACCESS_NETWORK_STATE
三、自動更新為什么在3G情況下沒有提示更新?
我們默認設置是只在wifi網(wǎng)絡下彈出更新,如果需要在非wifi下有更新提示請在程序入口添加如下代碼:UmengUpdateAgent.setUpdateOnlyWifi(false)
四、自動更新 apk是在哪里上傳的?查看幫助
五、自動更新混淆后無法使用怎么辦?查看幫助
六、使用增量更新時,只有arm的so文件,怎樣支持x86和mips?查看幫助
更多常見問題請點擊訪問:友盟自動更新常見問題索引
如果還有任何問題,請把您的問題發(fā)郵件至msg-support@umeng.com或者聯(lián)系企業(yè)QQ:800083942,另外還可以添加我們友盟自動更新官方QQ群:154857575,同時您也可以把您的問題發(fā)到友盟開發(fā)者社區(qū),我們會盡快回復您。
如果可以附上相關日志,我們可以更好的幫助您解決問題,可以通過加入這句代碼UpdateConfig.setDebug(true);
來打開日志輸出,發(fā)布應用時請去掉。
推薦文章
2025-01-18
2024-11-28
2024-11-09
2024-10-25
2024-06-25
2024-01-04
2023-11-06
2023-10-30
2023-10-13
2023-10-10
穩(wěn)定
產(chǎn)品高可用性高并發(fā)貼心
項目群及時溝通專業(yè)
產(chǎn)品經(jīng)理1v1支持快速
MVP模式小步快跑承諾
我們選擇聲譽堅持
10年專注高端品質(zhì)開發(fā)聯(lián)系我們
友情鏈接: