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