在Android开发中,获取设备的Android版本号是一个基础且常用的操作。这可以帮助开发者根据不同的版本进行适配或者实现特定的功能。以下是一些获取Android版本号的实用代码技巧。
1. 获取系统版本号
最简单的方式是通过系统的Build类来获取Android版本号。
import android.os.Build;
public class VersionInfo {
public static void main(String[] args) {
int versionCode = Build.VERSION.SDK_INT;
String versionName = Build.VERSION.RELEASE;
System.out.println("Version Code: " + versionCode);
System.out.println("Version Name: " + versionName);
}
}
这段代码会输出当前的Android系统版本码和版本名。
2. 获取API级别
Build.VERSION.SDK_INT返回的是API级别,这是一个整数,代表了Android系统的版本。例如,API级别29对应Android 10。
int apiLevel = Build.VERSION.SDK_INT;
System.out.println("API Level: " + apiLevel);
3. 获取具体的版本信息
如果你需要获取更详细的版本信息,比如厂商、型号等,可以使用以下方法。
String brand = Build.BRAND;
String device = Build.DEVICE;
String model = Build.MODEL;
String id = Build.ID;
String product = Build.PRODUCT;
System.out.println("Brand: " + brand);
System.out.println("Device: " + device);
System.out.println("Model: " + model);
System.out.println("ID: " + id);
System.out.println("Product: " + product);
4. 使用SharedPreferences保存版本信息
有时候,你可能需要将版本信息保存到SharedPreferences中,以便后续使用。
import android.content.Context;
import android.content.SharedPreferences;
public class SaveVersionInfo {
public static void saveVersionInfo(Context context) {
SharedPreferences sharedPreferences = context.getSharedPreferences("VersionInfo", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putInt("versionCode", Build.VERSION.SDK_INT);
editor.putString("versionName", Build.VERSION.RELEASE);
editor.apply();
}
}
5. 使用Manifest获取版本号
除了在代码中获取版本号,你还可以在AndroidManifest.xml文件中定义版本号。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.app">
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<meta-data
android:name="versionName"
android:value="@string/version_name" />
</application>
</manifest>
然后在代码中获取:
String versionName = context.getResources().getString(R.string.version_name);
System.out.println("Version Name from Manifest: " + versionName);
通过以上方法,你可以轻松地在Android应用中获取和操作Android版本信息。这些技巧对于开发适配不同Android版本的软件非常有用。