• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            大龍的博客

            常用鏈接

            統(tǒng)計(jì)

            最新評(píng)論

            應(yīng)用程序版本 --- 轉(zhuǎn)

            在程序升級(jí)/維護(hù)過(guò)程中,版本控制是一個(gè)很重要的內(nèi)容。

            ·         用戶需要了解安裝到設(shè)備上的應(yīng)用程序的版本信息,以及了解哪些版本可以進(jìn)行升級(jí)。

            ·         其它應(yīng)用程序——包括你發(fā)布的其它程序——需要向系統(tǒng)查詢你的應(yīng)用程序的版本,來(lái)確定相互之間的兼容性。

            ·         你的應(yīng)用程序發(fā)布的服務(wù)可能也需要查詢版本來(lái)顯示給用戶。

            Android系統(tǒng)自身不檢查應(yīng)用程序的版本信息,也不會(huì)強(qiáng)制限制升級(jí)或兼容等。相反的,只是用戶或應(yīng)用程序自身對(duì)應(yīng)用程序的版本有限制。

            Android系統(tǒng)會(huì)對(duì)程序manifest中描述的系統(tǒng)版本(minSdkVersion特性指定)進(jìn)行檢查。這樣,應(yīng)用程序可以指定兼容的最低系統(tǒng)API等級(jí)。了解更多信息,請(qǐng)參考“指定程序的系統(tǒng)API等級(jí)”。

            應(yīng)用程序版本設(shè)定

            為了定義應(yīng)用程序的版本信息,你需要在程序的manifest文件中進(jìn)行設(shè)定。這里有兩個(gè)特性,而且往往你需要同時(shí)設(shè)定這兩個(gè)值:

            ·         android:versionCode——整數(shù)值,代表應(yīng)用程序代碼的相對(duì)版本。

            整數(shù)值有利于其它程序比較,檢查是升級(jí)還是降級(jí)。你可以把這個(gè)值設(shè)定為任何想設(shè)的值,但是,你必須保證后續(xù)更新版的值要比這個(gè)大。系統(tǒng)不會(huì)強(qiáng)制要求這一行為,但是隨著版本更新值也增加是正常的行為。

            一般來(lái)說(shuō),你發(fā)布的第一版程序的versionCode設(shè)定為1,然后每次發(fā)布都會(huì)相應(yīng)增加,不管發(fā)布的內(nèi)容是較大還是較小的。這意味著android:versionCode不像應(yīng)用程序的發(fā)布版本(看下面的android:versionName)那樣顯示給用戶。應(yīng)用程序和發(fā)布的服務(wù)不應(yīng)該顯示這個(gè)版本值給用戶。

            ·         android:versionName——字符串值,代表應(yīng)用程序的版本信息,需要顯示給用戶。

            與android:versionCode一樣,系統(tǒng)不會(huì)為了任何內(nèi)部的目的使用這個(gè)值,除了顯示給用戶外。發(fā)布的服務(wù)也需要提取這個(gè)值來(lái)顯示給用戶。

            你需要在manifest文件中定義這兩個(gè)版本特性。

            下面是一個(gè)manifest的例子,展示了android:versionCode和android:versionName特性的定義。
            <?xml version="1.0" encoding="utf-8"?>
            <manifest xmlns:android="      package="com.example.package.name"
                  android:versionCode="2"
                  android:versionName="1.1">
                <application android:icon="@drawable/icon" android:label="@string/app_name">
                    ...
                </application>
            </manifest>

            在這個(gè)例子中,android:versionCode的值顯示當(dāng)前apk是第二版釋放的代碼,而android:codeName字符串中表述了相應(yīng)的小版本號(hào)。

            Android框架提供了一個(gè)API來(lái)查詢應(yīng)用程序的版本信息。為了獲取版本信息,應(yīng)用程序可以使用PackageManager的getPackageInfo(java.lang.String, int)方法。

            指定程序的系統(tǒng)API等級(jí)

            如果你的程序有最低的Android平臺(tái)限制,或者只是設(shè)計(jì)用于特定范圍的Android平臺(tái),那么,你就可以在應(yīng)用程序的manifest文件中指定API等級(jí)的信息。這樣做是為了確保應(yīng)用程序只能安裝到搭載有兼容的Android系統(tǒng)的設(shè)備上。

            指定API等級(jí)限制,在manifest文件中<uses-sdk>元素,并附帶一個(gè)或多個(gè)特性:

            ·         android:minSdkVersion——應(yīng)用程序能運(yùn)行的最低Android系統(tǒng)的版本,通過(guò)平臺(tái)的API等級(jí)標(biāo)識(shí)指定。

            ·         android:targetSdkVersion——指定程序設(shè)計(jì)用于運(yùn)行的API等級(jí)。在一些情況下,允許應(yīng)用程序顯式的指定目標(biāo)運(yùn)行的API等級(jí),而不是僅設(shè)定最低運(yùn)行的API等級(jí)。

            ·         android:maxSdkVersion——應(yīng)用程序能運(yùn)行的最高Android系統(tǒng)的版本,通過(guò)平臺(tái)的API等級(jí)標(biāo)識(shí)指定。重要:使用這個(gè)特性之前,請(qǐng)閱讀<uses-sdk>文檔。

            當(dāng)準(zhǔn)備安裝應(yīng)用程序時(shí),系統(tǒng)會(huì)檢查這個(gè)屬性的值并與系統(tǒng)的版本進(jìn)行比較。如果android:minSdkVersion的值大于系統(tǒng)的版本,系統(tǒng)會(huì)放棄當(dāng)前程序的安裝。相似的,系統(tǒng)也只在android:maxSdkVersion與系統(tǒng)的版本兼容時(shí)才執(zhí)行安裝。

            如果你沒有在manifest中指定這些特性,那么,系統(tǒng)會(huì)假設(shè)你的程序與所有平臺(tái)的版本兼容,且沒有最高的API等級(jí)限制。

            posted on 2010-05-06 14:25 大龍 閱讀(1319) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            久久久久久国产a免费观看黄色大片 | 亚洲国产成人久久一区久久| 久久天天躁狠狠躁夜夜不卡 | 久久精品国产亚洲av麻豆蜜芽| 精品一二三区久久aaa片| 精品国产VA久久久久久久冰| 国产精品九九久久免费视频| 国内精品久久久久影院亚洲| 久久中文娱乐网| 亚洲级αV无码毛片久久精品 | 久久久久久久精品成人热色戒| 久久精品aⅴ无码中文字字幕重口 久久精品a亚洲国产v高清不卡 | 亚洲精品国产美女久久久| 国产日韩久久久精品影院首页| 亚洲精品美女久久777777| 色综合久久久久综合99| 久久国产精品久久久| 久久久亚洲欧洲日产国码二区| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 国产一区二区三区久久精品| 久久久久久亚洲精品影院| 激情久久久久久久久久| 国产精品久久久天天影视| 久久99久久99精品免视看动漫| 99热热久久这里只有精品68| 狠狠色丁香婷综合久久| 人妻精品久久久久中文字幕69| 久久丝袜精品中文字幕| 久久人妻少妇嫩草AV无码蜜桃| 99久久婷婷免费国产综合精品| 国产69精品久久久久9999APGF| 天堂无码久久综合东京热| 久久亚洲中文字幕精品一区四| 一级做a爰片久久毛片16| 亚洲国产二区三区久久| 久久香蕉综合色一综合色88| 久久精品国产69国产精品亚洲| 久久久噜噜噜www成人网| 69久久夜色精品国产69| 9999国产精品欧美久久久久久 | 99国内精品久久久久久久|