Saya ingin tahu apakah ada cara untuk membaca Model Telepon secara terprogram di Android.
Saya ingin mendapatkan string seperti HTC Dream, Milestone, Sapphire atau apa pun ...
sumber
Saya ingin tahu apakah ada cara untuk membaca Model Telepon secara terprogram di Android.
Saya ingin mendapatkan string seperti HTC Dream, Milestone, Sapphire atau apa pun ...
Pada banyak perangkat populer, nama pasar perangkat tidak tersedia. Sebagai contoh, pada Samsung Galaxy S6 nilai Build.MODEL
bisa "SM-G920F"
, "SM-G920I"
atau "SM-G920W8"
.
Saya membuat perpustakaan kecil yang mendapat nama pasar (ramah konsumen) dari sebuah perangkat. Itu mendapatkan nama yang benar untuk lebih dari 10.000 perangkat dan terus diperbarui. Jika Anda ingin menggunakan perpustakaan saya klik tautan di bawah ini:
Jika Anda tidak ingin menggunakan perpustakaan di atas, maka ini adalah solusi terbaik untuk mendapatkan nama perangkat yang ramah konsumen:
/** Returns the consumer friendly device name */
public static String getDeviceName() {
String manufacturer = Build.MANUFACTURER;
String model = Build.MODEL;
if (model.startsWith(manufacturer)) {
return capitalize(model);
}
return capitalize(manufacturer) + " " + model;
}
private static String capitalize(String str) {
if (TextUtils.isEmpty(str)) {
return str;
}
char[] arr = str.toCharArray();
boolean capitalizeNext = true;
StringBuilder phrase = new StringBuilder();
for (char c : arr) {
if (capitalizeNext && Character.isLetter(c)) {
phrase.append(Character.toUpperCase(c));
capitalizeNext = false;
continue;
} else if (Character.isWhitespace(c)) {
capitalizeNext = true;
}
phrase.append(c);
}
return phrase.toString();
}
Contoh dari Verizon HTC One M8 saya:
// using method from above
System.out.println(getDeviceName());
// Using https://github.com/jaredrummler/AndroidDeviceNames
System.out.println(DeviceName.getDeviceName());
Hasil:
HTC6525LVW
HTC One (M8)
getDeviceName()
? Jika itu tidak memberi Anda hasil yang Anda cari tidak ada solusi yang lebih baik yang saya tahu.Saya menggunakan kode berikut untuk mendapatkan nama perangkat lengkap. Ia mendapatkan model dan string pabrikan dan menggabungkannya kecuali string model sudah berisi nama pabrikan (pada beberapa ponsel memang demikian):
Berikut adalah beberapa contoh nama perangkat yang saya dapatkan dari pengguna:
sumber
Ya: Bangun . MODEL .
sumber
Sebenarnya itu tidak 100% benar. Itu bisa memberi Anda Model (kadang-kadang angka).
Akan memberi Anda Produsen telepon (bagian HTC dari permintaan Anda):
Untuk nama produk:
sumber
String name = Build.MANUFACTURER + " - " + Build.MODEL
menjadi kombinasi yang paling berguna. Build.PRODUCT terkadang menggunakan nama yang tidak terduga. Misalnya, pada Galaxy Nexus, ia mengembalikan "takgu". Build.MODEL, di sisi lain, adalah nilai yang menghadap pengguna yang ditampilkan di bawah Pengaturan-> Tentang Telepon-> Nomor model.Untuk siapa yang mencari daftar properti lengkap di
Build
sini adalah contoh untuk Sony Z1 Compact:Anda dapat dengan mudah mendaftar properti-properti untuk perangkat Anda dalam mode debug menggunakan dialog "evaluasi ekspresi" menggunakan kotlin:
sumber
sumber
Semua string berikut digunakan saat Anda ingin mengambil pabrikan, nama perangkat, dan / atau model:
sumber
Tampaknya Anda perlu menggunakan daftar dari Google di https://support.google.com/googleplay/answer/1727131
API tidak mengembalikan apa pun yang saya harapkan atau apa pun di Pengaturan. Untuk Motorola X saya inilah yang saya dapatkan
Pergi ke halaman yang disebutkan di atas "hantu" peta ke Moto X. Sepertinya ini bisa menjadi sedikit lebih sederhana ...
sumber
Anda dapat menggunakan kode berikut untuk mendapatkan nama merek dan model merek perangkat.
sumber
Ini kode saya, Untuk mendapatkan Produsen, nama Merek, versi Os dan mendukung Level API
Keluaran:
sumber
Versi Kotlin
sumber
capitalize
stackoverflow.com/a/59158474/1446466Berubah sedikit kode Idola. Ini akan menggunakan huruf besar kata-kata saat mendapatkan model perangkat.
sumber
Versi pendek Kotlin:
sumber
Build.DEVICE Memberikan nama yang dapat dibaca manusia untuk beberapa perangkat selain
Build.MODEL
sumber
Anda bisa mendapatkan nama perangkat telepon dari
Jika ponsel tidak mendukung Bluetooth, maka Anda harus membuat nama perangkat dari
Berikut ini contoh kode untuk mendapatkan nama perangkat ponsel.
sumber
Anda dapat mencoba fungsi berikut dan mengembalikan nama phoneModel Anda dalam format string.
sumber