15

ターゲット デバイスで現在実行されている Android リリース バージョンをコードで確認する必要があります。コード例を提供できますか?

4

5 に答える 5

25

私はこれを探していましたが、解決策が見つかりませんでした-ここにたどり着き、自分で見つけたので、これを探している人のために:

int SDK_INT = android.os.Build.VERSION.SDK_INT;

これは os sdk level 7 eclair 8 froyo などを返します

于 2010-11-18T17:34:43.243 に答える
9

2.2、2.3.3、4.0、4.0.3 などの Android のビルド バージョンを取得するには、次のコードを使用します。

String deviceVersion = Build.VERSION.RELEASE;
于 2012-11-16T08:15:42.960 に答える
1

これは私自身の質問の複製だと思います: ndk version at run time。簡単な答え: ネイティブ アプリケーションで簡単に実行する方法はありません (ただし、Java アプリを実行し、それと通信してバージョンを取得することはできます)。

于 2010-06-20T13:03:52.350 に答える
1

デバイスでシェルコマンドを実行できますgetprop ro.build.version.releaseか?

于 2010-06-21T08:06:07.270 に答える
-2

これは機能します

次のものもインポートします。

import com.android.phonetests.TEST_INTERFACE;
import android.os.Build;
import android.app.ActivityThread;
import android.content.pm.ApplicationInfo;
import android.content.pm.IPackageManager;


private int GetSDKVersion()
{
    int version = 0;
    IPackageManager pm = ActivityThread.getPackageManager();
    try
    {
        //returns a ref to my application according to its application name
        ApplicationInfo applicationInfo = pm.getApplicationInfo("com.android.phonetests", 0);

        if (applicationInfo != null) 
        {           
            version = applicationInfo.targetSdkVersion; ////this makes the same -> version = Build.VERSION.SDK_INT
            Log.i(LOG_TAG,"[DBG] version: " + version);  

            //2 is 5
            //2.01 6 (Donut - 2.01)
            //2.2  7 (Eclair - 2.2) currently it is Eclair_MR1 (Major Release)                  
            switch (version) 
            {                           
                case Build.VERSION_CODES.ECLAIR_MR1:
                Log.i(LOG_TAG,"[DBG] version: ECLAIR");//2.2  7 (Eclair - 2.2) currently it is Eclair_MR1 (Major Release)
                break;
                case Build.VERSION_CODES.DONUT:
                Log.i(LOG_TAG,"[DBG] version: DONUT");//2.01 6 (Donut - 2.01)
                break;
            }
        }
    } 
    catch (android.os.RemoteException e){}      
    return version;
}
于 2010-06-24T11:33:17.163 に答える