入門者が調べたことを、同レベルの人の参考になればと説明
自分が整理用に作ったコードをもとにしてます
地域(ロケール)
端末設定の取得
端末に設定してある地域情報を得るのは,Locale を使います
// ロケールの取得
val locale = Locale.getDefault()
val language = locale.getLanguage()
val country = locale.getCountry()
Log.d("County", country)
return if (language == "ja") {
"日本"
} else if (language == "en") {
"英語"
} else {
"他"
}
日本時の切替
また、メッセージを日本とそのほかに変えるのは strings.xml を使うと簡単にできます
普通に android studioでプロジェクトを作ると res\values\strings.xml が作られ
この文字を使いますが。
res\values-ja\strings.xml を作り、同じキーに日本語を設定しておけば、実行時に端末の設定が日本の場合 values-ja が使われ、それ以外の場合以前のまま values のが使われます.
プロジェクト内で使用する文字列はここに宣言しておくと、getString(R.string.key_xxx) とすると文字列として使えるので、修正忘れとかを防止できます
ネットワーク状況の確認
ネットワークに繋がっているか
ネットワークに接続しているかの確認
val connMgr = context.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
val networkInfo = connMgr.activeNetworkInfo
if ( networkInfo != null && networkInfo.isConnected ) {
// 接続中
}
wifiも含めてネットワークに繋がっているかの確認みたいです
Wifiか?
なので,wifiかはもう1回確認が必要
val connMgr = context.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
val networkInfo = connMgr.activeNetworkInfo
if ( networkInfo != null && networkInfo.isConnected
&& networkInfo.type == ConnectivityManager.TYPE_WIFI) {
// Wifiか?
}
エミュレータでの確認なので、ちょっと自信ないです。
すいません