展会信息港展会大全

在一个应用中启动另外一个应用
来源:互联网   发布日期:2016-01-14 12:31:03   浏览:1829次  

导读:今天晚上Jimmy问了我一个问题,就是如何在一个应用中通过某个事件,而去启动另外一个已安装的应用。所以愿意和大家分享一下。为了能让大家更容易理解,我写了一个简单的Demo,我们的程序有俩个按钮,其中一个点击......

今天晚上Jimmy问了我一个问题,就是如何在一个应用中通过某个事件,而去启动另外一个已安装的应用。所以愿意和大家分享一下。

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

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

下面是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">

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

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

}

});

}

}

四、执行,将得到如上效果。

赞助本站

人工智能实验室
相关内容
AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港