您的位置:首页 > 移动开发 > Android开发

Android 在一个应用中如何启动另外一个已安装的应用

2011-11-25 11:18 856 查看
如何在一个应用中 通过某个事件,而去启动另外一个已安装的应用。

而为了能让大家更加容易的理解,我写了一个简单的Demo,我们的程序有俩个按钮,其中一个点击会启动我自己写的应用(一个3D应用为例),而另外一个按钮会启动系统自带的应用(如,日历,闹钟,计算器等等).这里我一日历为例子!

首先看一下我们的效果图(点击第一个按钮为例):





下面是Demo的详细步骤:

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

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

view
plain

<?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"

>

<TextView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="Welcome to Mr Wei's Blog."

/>

<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代码如下:

view
plain

package com.android.tutor;

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);

}

});

}

}

四、执行之,将得到如上效果!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐