Как сделать лаунчер

Я занимался разработкой довольно долгое время и сейчас пытаюсь создать приложение, которое заменит оригинальный дом (например, HTC sense).

Мне нужно, чтобы приложение открывалось, когда пользователь нажимает кнопку "Домой" на своем телефоне.

Так что в основном это замена дома.

Кто-нибудь знает, как это сделать?

5 ответов

Просто разработайте нормальное приложение, а затем добавьте пару строк в файл манифеста приложения.

Сначала вам нужно добавить следующий атрибут в вашу деятельность:

            android:launchMode="singleTask"

Затем добавьте две категории к фильтру намерений:

            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.HOME" />

Результат может выглядеть примерно так:

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.dummy.app"
        android:versionCode="1"
        android:versionName="1.0" >

        <uses-sdk
            android:minSdkVersion="11"
            android:targetSdkVersion="19" />

        <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:theme="@style/AppTheme" >
            <activity
                android:name="com.dummy.app.MainActivity"
                android:launchMode="singleTask"
                android:label="@string/app_name" >
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                    <category android:name="android.intent.category.DEFAULT" />
                    <category android:name="android.intent.category.HOME" />
                </intent-filter>
            </activity>
        </application>

    </manifest>

Это так просто!

Вы можете проверить исходный код Launcher и проекта Launcher2, используемых в Android.

Это примеры, предоставленные командой Android. Если вы уже загрузили образцы, вы можете импортировать образец замены на главный экран, выполнив следующие действия.

Файл> Создать> Другое> Android> Пример Android-проекта> Android xx> Главная> Готово

Но если у вас нет загруженных образцов, загрузите его, используя следующие шаги

Windows > Android SDK Manager > выбирает "Образец для SDK" для SDK, он вам нужен> Установить пакет> Принять лицензию> Установить

Я нашел это довольно полезным. Он описал каждую процедуру шаг за шагом. Вы можете следовать этому http://taywils.me/2011/07/05/buildanapplicationlauncherwithandroid/

Вот исходный код Launcher3 (средство запуска AOSP), используемое в KitKat (и, вероятно, тоже леденец на палочке):

https://android.googlesource.com/platform/packages/apps/Launcher3/+/master

Если вы видите какой-либо новый лаунчер от AOSP, просто замените 3 в URL с более новой версией.

Другие вопросы по тегам