陈建华的博客
专注web开发
android手把手教你开发launcher(一)
2019-05-05 11:53:33   阅读197次

auncher,也就是android的桌面应用程序。下图是android2.3的launcher应用程序:

   

接下来我们要开发一个自己的launcher,使其替代系统的默认launcher。
怎样使我们的应用程序成为一个launcher?

下面我们就新建一个叫做SAOLauncher的工程,具体步骤略。创建完工程后整个目录结构如下图:

20130923133918890.jpg

现在我们的AndroidManifest.xml文件这样的:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.sljjyy.sao.launcher"
    android:versionCode="1"
    android:versionName="1.0" >
    <uses-sdk
        android:minSdkVersion="7"
        android:targetSdkVersion="16" />
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.sljjyy.sao.launcher.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>




请注意<intent-filter>
</intent-filter>里面的内容。
下面我们在其中添加上以下两行:

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





此时AndroidManifest.xml文件是这样:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.sljjyy.sao.launcher"
    android:versionCode="1"
    android:versionName="1.0" >
    <uses-sdk
        android:minSdkVersion="7"
        android:targetSdkVersion="16" />
 
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.sljjyy.sao.launcher.MainActivity"
            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.HOME" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
    </application>
</manifest>




此时运行程序,我们看不到任何特别之处。当按下home键时(模拟器上按下home会调出桌面应用),程序如图:  

20130923140528750.jpg

我们看到了,我们开发的SAO Launcher跟Xperia主页(索尼的home)出现在了一起。 
重启,我们看到我们自己的程序已经可以作为home来运行了。
ok。 第一步完成了:把我们的应用程序作为home。

总结一下:要把我们的应用程序作为home,只需要在AndroidManifest.xml中添加:
 

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


android手把手教你开发launcher(一)

android手把手教你开发launcher(二)——列出安装的应用程序

android手把手教你开发launcher(三)——启动安装的应用程序

android手把手教你开发launcher(四)——显示widget

android手把手教你开发launcher(五)——设置壁纸



-----------------------------------------------------
转载请注明来源此处
原地址:#

-----网友评论----
暂无评论
-----发表评论----
微网聚博客乐园 ©2014 blog.mn886.net 鲁ICP备14012923号   网站导航