caiwb1990 发表于 2013-1-14 18:03:31

Android启动已安装应用

如何在一个应用中 通过某个事件,而去启动另外一个已安装的应用。

写一个简单的Demo,我们的程序有俩个按钮
一个点击会启动自己写的应用
而另外一个按钮会启动系统自带的日历


一、新建一个Android工程命名为StartAnotherApplicationDemo.

二、修改main.xml布局,代码如下:


    <?xml version="1.0" encoding="utf-8"?>      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"          android:orientation="vertical"          android:layout_width="fill_parent"          android:layout_height="fill_parent"          >      <Button          android:id="@+id/button"          android:layout_width="fill_parent"         android:layout_height="wrap_content"         android:text="Start Another Application"      />      <Button          android:id="@+id/start_calender"          android:layout_width="fill_parent"         android:layout_height="wrap_content"         android:text="Start Calendar"      />      </LinearLayout>

三、修改主程序StartAnotherApplicationDemo.java代码如下:

    package cn.caiwb.new;      import android.app.Activity;      import android.content.ComponentName;      import android.content.Intent;      import android.os.Bundle;      import android.view.View;      import android.widget.Button;      public class StartAnotherApplicationDemo extends Activity {                   private Button mButton01,mButton02;                  public void onCreate(Bundle savedInstanceState) {            super.onCreate(savedInstanceState);            setContentView(R.layout.main);                            mButton01 = (Button)findViewById(R.id.button);            mButton02 = (Button)findViewById(R.id.start_calender);                            //-----启动我们自身写的程序------------------            mButton01.setOnClickListener(new Button.OnClickListener(){                  public void onClick(View v) {                      //-----核心部分----- 前名一个参数是应用程序的包名,后一个是这个应用程序的主Activity名                      Intent intent=new Intent();                      intent.setComponent(new ComponentName("com.droidnova.android.games.vortex",                                                            "com.droidnova.android.games.vortex..Vortex"));                      startActivity(intent);                  }                         });            //-----启动系统自带的应用程序------------------            mButton02.setOnClickListener(new Button.OnClickListener(){                  public void onClick(View v) {                      Intent intent=new Intent();                      intent.setComponent(new ComponentName("com.android.calendar", "com.android.calendar.LaunchActivity"));                      startActivity(intent);                  }                         });          }      }
页: [1]
查看完整版本: Android启动已安装应用