【问题标题】:How do i declare my Activity as Launcher?如何将我的 Activity 声明为 Launcher?
【发布时间】:2013-05-18 15:02:10
【问题描述】:

我正在尝试构建一种自定义锁屏。

为了实现这一点,我需要禁用 HOME 按钮。

来自this post,我知道我可以通过将我的 Activity 声明为 Launcher 来实现。

请问我该怎么做? (显然在 Manifest 中) 这是清单。 “充当”锁屏的 Activity 是 LockScreen

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.appengine.paranoid_android.lost"
android:versionCode="2"
android:versionName="1.1" >

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <activity
        android:name=".InfoSetup"
        android:clearTaskOnLaunch="true"
        android:label="@string/activity_name"
        android:launchMode="singleTask" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".LockScreen"
        android:clearTaskOnLaunch="true"
        android:label="@string/activity_name"
        android:launchMode="singleInstance"
        android:theme="@android:style/Theme.NoTitleBar" >
        <service
            android:name=".InfoService"
            android:label="@string/service_name" />

        <receiver android:name="com.appengine.paranoid_android.lost.BootCompleteReceiver" >
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.PACKAGE_ADDED" />
                <action android:name="android.intent.action.PACKAGE_CHANGED" />
                <action android:name="android.intent.action.PACKAGE_REMOVED" />

                <data android:scheme="package" />
            </intent-filter>
        </receiver>
    </activity>
</application>

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
<!-- <uses-permission android:name="android.permission.DISABLE_KEYGUARD"/> -->
<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" >
</uses-sdk>

【问题讨论】:

  • 好吧..在andorid os 4.0之后你不能锁定主页按钮..
  • 阅读文档。您需要使用 MAIN 操作回答 HOME 类别意图
  • @njzk2 谢谢。但是我不知道该怎么做或在哪里阅读...如果您能给我更多详细信息,我将不胜感激
  • 在哪里阅读有关意图的文档? developer.android.com/reference/android/content/Intent.html
  • 另外,您不能在清单的活动中声明服务。这些是分开的元素。

标签: android manifest launcher


【解决方案1】:

将意图过滤器移至您的活动

<activity
    android:name=".LockScreen"
    android:clearTaskOnLaunch="true"
    android:label="@string/activity_name"
    android:launchMode="singleInstance"
    android:theme="@android:style/Theme.NoTitleBar" >

    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

【讨论】:

    猜你喜欢
    • 2017-09-18
    • 1970-01-01
    • 1970-01-01
    • 2021-02-02
    • 2012-07-28
    • 2012-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多