android 判断手机厂商
时间: 2023-07-22 16:14:22 浏览: 158
可以使用以下代码来判断当前 Android 手机的厂商:
```java
String manufacturer = Build.MANUFACTURER;
```
在这个代码中,`Build.MANUFACTURER` 是 Android 系统提供的一个常量,它包含了当前设备的制造商名称。例如,如果返回值是 "Xiaomi",那么当前设备的制造商就是小米。
如果需要更加精确的判断,可以使用以下代码:
```java
String manufacturer = Build.MANUFACTURER;
String model = Build.MODEL;
if (manufacturer.equalsIgnoreCase("samsung") && model.equalsIgnoreCase("sm-g950f")) {
// 这是三星 S8 设备
}
```
在这个代码中,首先获取了设备的制造商和型号,然后使用 `equalsIgnoreCase` 方法来进行比较。如果需要判断不同的设备,只需要更改 `manufacturer` 和 `model` 的值即可。
相关问题
android 判断 音乐是否播放,Android如何判断当前手机是否正在播放音乐,如正在播放则暂停通过MediaPlayer
可以通过查询 AudioManager 和 MediaMetadataRetriever 来判断当前是否正在播放音乐。具体实现方法如下:
1. 获取 AudioManager:
```java
AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
```
2. 获取媒体信息:
```java
MediaMetadataRetriever mmr = new MediaMetadataRetriever();
mmr.setDataSource(getApplicationContext(), Uri.parse("content://media/external/audio/media/" + audioManager.getStreamVolume(AudioManager.STREAM_MUSIC)));
String duration = mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION);
```
3. 判断是否正在播放:
```java
if (audioManager.isMusicActive()) {
// 正在播放音乐,暂停MediaPlayer
mediaPlayer.pause();
}
```
完整的代码示例:
```java
AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
MediaMetadataRetriever mmr = new MediaMetadataRetriever();
mmr.setDataSource(getApplicationContext(), Uri.parse("content://media/external/audio/media/" + audioManager.getStreamVolume(AudioManager.STREAM_MUSIC)));
String duration = mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION);
if (audioManager.isMusicActive()) {
// 正在播放音乐,暂停MediaPlayer
mediaPlayer.pause();
}
```
注意:这种方法在有些设备上可能无法正确判断是否正在播放,因为不同的厂商实现可能不同。建议在实际使用中进行测试。
Android 获取手机当前ROM版本信息,要支持主流国内厂商
获取 Android 手机当前 ROM 版本信息可以通过以下代码实现:
```java
String brand = Build.BRAND; // 获取手机品牌
String model = Build.MODEL; // 获取手机型号
String release = Build.VERSION.RELEASE; // 获取 Android 系统版本号
String display = Build.DISPLAY; // 获取 ROM 版本号
// 判断 ROM 版本号是否为空
if (TextUtils.isEmpty(display)) {
display = "未知";
}
String romVersion = brand + " " + model + " " + release + " " + display;
```
至于支持主流国内厂商,可以根据不同厂商的 ROM 版本号规则进行判断和处理,例如:
- 小米:ROM 版本号以“MI”开头,例如“MIUI V12.0.3.0.RJBCNXM”
- 华为:ROM 版本号以“EMUI”开头,例如“EMUI 11.0.0.131(C00E131R3P8)”
- vivo:ROM 版本号以“Funtouch OS”开头,例如“Funtouch OS_9.1_PD1818GF_EX_A_1.23.6”
- OPPO:ROM 版本号以“ColorOS”开头,例如“ColorOS_V7.1.0”
针对不同厂商的 ROM 版本号规则,可以使用正则表达式进行匹配和处理。
阅读全文