Kotlinde Android Sistem Launcher Programı Örneği
Kotlin ile basit bir Android sistem launcher uygulaması oluşturabilirsiniz. Bu örnekte, uygulamaları listeleyen ve bir uygulamayı başlatan basit bir launcher yapacağız.
1. Adım: Yeni Bir Proje Oluşturma
Android Studio'yu açın ve yeni bir proje oluşturun. Proje şablonu olarak "Empty Activity" seçin ve dil olarak Kotlin'i seçin.
2. Adım: AndroidManifest.xml
Dosyasını Güncelleme
Launcher uygulaması olarak çalışması için AndroidManifest.xml
dosyasını aşağıdaki gibi güncelleyin:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.simplelauncher">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.SimpleLauncher">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
</application>
</manifest>
Burada android.intent.category.HOME
ve android.intent.category.DEFAULT
kategorileri, uygulamamızın bir launcher olarak tanınmasını sağlar.
3. Adım: MainActivity.kt
Dosyasını Oluşturma
MainActivity.kt
dosyasında, cihazda yüklü olan uygulamaları listeleyen ve bir uygulamayı başlatan kodu yazacağız.
package com.example.simplelauncher
import android.content.Intent
import android.content.pm.PackageManager
import android.os.Bundle
import android.widget.ArrayAdapter
import android.widget.ListView
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val listView = findViewById<ListView>(R.id.app_list)
val packageManager = packageManager
val mainIntent = Intent(Intent.ACTION_MAIN, null)
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER)
val appList = packageManager.queryIntentActivities(mainIntent, 0)
val appNames = ArrayList<String>()
for (info in appList) {
appNames.add(info.loadLabel(packageManager).toString())
}
val adapter = ArrayAdapter(this, android.R.layout.simple_list_item_1, appNames)
listView.adapter = adapter
listView.setOnItemClickListener { _, _, position, _ ->
val launchIntent = packageManager.getLaunchIntentForPackage(appList[position].activityInfo.packageName)
startActivity(launchIntent)
}
}
}
4. Adım: activity_main.xml
Dosyasını Oluşturma
activity_main.xml
dosyasında, uygulamaları listeleyecek bir ListView
ekleyin:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@+id/app_list"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>
5. Adım: Uygulamayı Çalıştırma
Uygulamayı bir Android cihazda veya emülatörde çalıştırın. Uygulama başlatıldığında, cihazda yüklü olan uygulamaların bir listesini göreceksiniz. Listeden bir uygulamaya tıkladığınızda, o uygulama başlatılacaktır.
6. Adım: Launcher Olarak Ayarlama
Uygulamayı çalıştırdıktan sonra, cihazınızın ayarlarına giderek bu uygulamayı varsayılan launcher olarak ayarlayabilirsiniz. Bu, genellikle "Ana ekran uygulaması" veya "Launcher" seçenekleri altında bulunur.
Sonuç
Bu basit örnek, Kotlin kullanarak bir Android sistem launcher uygulaması oluşturmanın temellerini gösterir. Bu örneği geliştirerek daha karmaşık özellikler ekleyebilirsiniz, örneğin uygulamaları kategorilere ayırmak, arama özelliği eklemek veya özelleştirilebilir bir ana ekran oluşturmak gibi.
Hiç yorum yok:
Yorum Gönder