[解決済み] Android Phone Model programmatically取得 , How to get Device name and model programmatically in android?
2022-03-23 03:11:02
質問
AndroidでPhone Modelをプログラム的に読み取る方法があれば教えてください。
HTC Dream, Milestone, Sapphire などの文字列を取得したいのですが・・・。
解決方法は?
多くの一般的なデバイスでは、デバイスのマーケット名が利用できません。たとえば、Samsung Galaxy S6 の場合、その値は
Build.MODEL
は、次のようになります。
"SM-G920F"
,
"SM-G920I"
または
"SM-G920W8"
.
私は、デバイスのマーケット名(消費者に親しみやすい名前)を取得する小さなライブラリを作りました。これは、以下のような正しい名前を取得します。 10,000以上 は、常に更新されています。私のライブラリを使用したい場合は、以下のリンクをクリックしてください。
Github上のAndroidDeviceNamesライブラリ
上記のライブラリを使用したくない場合は、消費者に優しいデバイス名を取得するための最良の解決策です。
/** 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();
}
Verizon HTC One M8での例です。
// using method from above
System.out.println(getDeviceName());
// Using https://github.com/jaredrummler/AndroidDeviceNames
System.out.println(DeviceName.getDeviceName());
結果
HTC6525LVW
HTC One (M8)
関連
-
アンドロイドスタジオのエラーを解決する --> Error:(1, 0) id 'com.android.application' を持つプラグインが見つかりません。
-
Android Nで報告されたエラーを解決する: android.os.FileUriExposedException: file:///storage/emulated/0/
-
WeChatとQQは、他のアプリのオープンリストに自分のアプリを追加し、ファイルパスを取得することができます
-
[解決済み] Androidのソフトキーボードをプログラムで閉じる/隠すにはどうすればよいですか?
-
[解決済み] Androidでアクティビティ起動時にEditTextにフォーカスが当たらないようにする方法
-
[解決済み] インスタンス状態の保存を使用してアクティビティ状態を保存するにはどうすればよいですか?
-
[解決済み] Androidで画面の大きさをピクセル単位で取得する方法
-
[解決済み] Androidで'Context'を取得する静的な方法?
-
[解決済み] Androidでアプリケーションのメモリ使用量を確認するにはどうすればよいですか?
-
[解決済み] Android端末の電話番号をプログラムで取得する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Gradle の同期に失敗しました。com.android.tools.build:gradle が見つかりませんでした。
-
cygwinのダウンロード、インストールチュートリアル、およびCDTの「makeプログラムがパスに見つからない」バグの解消
-
Android開発で「Attempt to invoke virtual method 'XXX()' on null object reference」というヌルポインター例外に遭遇する。
-
アンドロイドのエリプサイズを使用する
-
view.getRootView()の本当の意味とテストについて
-
Android ProgressBarの色を変更する
-
android bluetooth--Bluetooth on、検索、ペアリング、接続
-
Android Studioのgitの使用とgitの設定パス
-
Android TextViewは、テキスト内容が表示省略記号を超えているかどうかを判断する
-
[解決済み】Androidのデバイス名を取得する