यह उदाहरण दर्शाता है कि Kotlin में Locale.getDefault() का उपयोग करके Android डिवाइस की वर्तमान सिस्टम भाषा कैसे प्राप्त करें।
चरण 1 - नया प्रोजेक्ट बनाएं
Android Studio: File → New Project।
चरण 2 - activity_main.xml लेआउट
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
xmlns:tools="https://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="70dp"
android:background="#008080"
android:padding="5dp"
android:text="TutorialsPoint"
android:textColor="#fff"
android:textSize="24sp"
android:textStyle="bold" />
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:gravity="center_horizontal"
android:textColor="@android:color/holo_blue_bright"
android:textSize="24sp"
android:textStyle="bold" />
</RelativeLayout>
चरण 3 - MainActivity.kt में भाषा प्राप्त करें
import android.os.Bundle
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
import java.util.Locale
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
title = "KotlinApp"
val textView = findViewById<TextView>(R.id.textView)
// डिफ़ॉल्ट लोकेल प्राप्त करें
val currentLocale = Locale.getDefault()
// विभिन्न प्रारूपों में भाषा जानकारी
val languageCode = currentLocale.language // ISO 639-1 कोड (उदाहरण: "hi", "en")
val countryCode = currentLocale.country // ISO 3166-1 कोड (उदाहरण: "IN", "US")
val displayLanguage = currentLocale.displayLanguage // स्थानीयकृत नाम (उदाहरण: "हिन्दी", "English")
val displayCountry = currentLocale.displayCountry // स्थानीयकृत देश नाम
val displayName = currentLocale.displayName // पूर्ण नाम
textView.text = """
वर्तमान डिवाइस भाषा:
भाषा कोड: $languageCode
देश कोड: $countryCode
प्रदर्शन भाषा: $displayLanguage
प्रदर्शन देश: $displayCountry
पूर्ण नाम: $displayName
""".trimIndent()
}
}
चरण 4 - AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
package="com.example.getlanguage">
<application ...>
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
ऐप चलाएं
ऐप चलाएं। स्क्रीन पर डिवाइस की वर्तमान भाषा कोड, देश कोड और स्थानीयकृत नाम प्रदर्शित होंगे।
ऐप-स्तरीय भाषा बदलना (Android 13+ API 33):
val appLocale = Locale("hi", "IN")
val localeConfig = LocaleConfig.Builder().setLocales(LocaleList(appLocale)).build()
context.createConfigurationContext(context.configuration.apply { setLocales(LocaleList(appLocale)) })
ऐप में भाषा बाध्य करना (पुराने API):
val config = resources.configuration
config.setLocale(Locale("hi", "IN")) // API 24+
// या
config.locale = Locale("hi", "IN") // डिप्रिकेटेड
resources.updateConfiguration(config, resources.displayMetrics)