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

转载 2012年03月31日 14:10:17


来自:http://blog.csdn.net/android_tutor/article/details/5596494

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

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

 

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

 

 

 

 

下面是Demo的详细步骤:

 

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

 

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

 

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:orientation="vertical"  
  4.     android:layout_width="fill_parent"  
  5.     android:layout_height="fill_parent"  
  6.     >  
  7. <TextView    
  8.     android:layout_width="fill_parent"   
  9.     android:layout_height="wrap_content"   
  10.     android:text="Welcome to Mr Wei's Blog."  
  11.     />  
  12. <Button  
  13.     android:id="@+id/button"  
  14.     android:layout_width="fill_parent"   
  15.     android:layout_height="wrap_content"   
  16.     android:text="Start Another Application"  
  17. />  
  18. <Button  
  19.     android:id="@+id/start_calender"  
  20.     android:layout_width="fill_parent"   
  21.     android:layout_height="wrap_content"   
  22.     android:text="Start Calendar"  
  23. />  
  24. </LinearLayout>  

 

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

 

  1. package com.android.tutor;  
  2. import android.app.Activity;  
  3. import android.content.ComponentName;  
  4. import android.content.Intent;  
  5. import android.os.Bundle;  
  6. import android.view.View;  
  7. import android.widget.Button;  
  8. public class StartAnotherApplicationDemo extends Activity {  
  9.      
  10.     private Button mButton01,mButton02;  
  11.       
  12.     public void onCreate(Bundle savedInstanceState) {  
  13.         super.onCreate(savedInstanceState);  
  14.         setContentView(R.layout.main);  
  15.           
  16.         mButton01 = (Button)findViewById(R.id.button);  
  17.         mButton02 = (Button)findViewById(R.id.start_calender);  
  18.           
  19.         //-----启动我们自身写的程序------------------  
  20.         mButton01.setOnClickListener(new Button.OnClickListener(){  
  21.             public void onClick(View v) {  
  22.                 //-----核心部分----- 前名一个参数是应用程序的包名,后一个是这个应用程序的主Activity名  
  23.                 Intent intent=new Intent();  
  24.                 intent.setComponent(new ComponentName("com.droidnova.android.games.vortex",   
  25.                                                      "com.droidnova.android.games.vortex..Vortex"));  
  26.                 startActivity(intent);  
  27.             }             
  28.         });  
  29.       //-----启动系统自带的应用程序------------------  
  30.         mButton02.setOnClickListener(new Button.OnClickListener(){  
  31.             public void onClick(View v) {  
  32.                 Intent intent=new Intent();  
  33.                 intent.setComponent(new ComponentName("com.android.calendar""com.android.calendar.LaunchActivity"));  
  34.                 startActivity(intent);  
  35.             }             
  36.         });  
  37.     }  
  38. }  

 

 

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


相关文章推荐

Android 安装和启动另外一个应用

有时候一个应用需要启动另外一个应用来完成操作,比如在某些应用中打开闹钟,相机,日历等等。启动或安装相应的应用的方法:Step1:判断是否安装目标应用。只要知道目标应用的安装包名就可以通过判断"/dat...

Android--一个好玩的应用程序/开机自启动

这个例子实现了一个小程序,这个程序的特殊之处在于只要运行一次,然后它就会伴随着手机的启动而自己运行。 首先,为了捕捉手机启动的事件,我们需要在AndroidManifest.xml文件中添加如下的代...

Android应用开发学习笔记之启动另外一个Activity

作者:刘昊昱  博客:http://blog.csdn.net/liuhaoyutz   一个Activity可以启动另外一个Activity,以实现比较复杂的功能,我们来看一个例子,其运行效果如...

android应用开发实践三----Atcity 通过Intent 来启动另一个Activity来实现简易拨号

用到的字符串资源 Myphone Hello world! 请输入号码: Settings 拨打号码 联通热线 充值热线 ...

为什么Android每当启动一个新的应用程序时会通过“throw new ZygoteInit.MethodAndArgsCaller(m, argv)”进入ActivityThread的main函数

为什么Android每当启动一个新的应用程序时会通过“throw new ZygoteInit.MethodAndArgsCaller(m, argv)”进入ActivityThread的main函数...
  • a123ok
  • a123ok
  • 2015年08月24日 22:53
  • 797

android 获得一个应用程序的启动次数,运行时间等信息

转载声明,原文出自:http://androidkaifa.com/thread-1036-1-1.html 通过com.android.internal.os.PkgUsageStat...

Android官方开发文档Training系列课程中文版:构建第一款安卓应用之启动另一个Activity

原文地址:http://android.xsoftlab.net/training/basics/firstapp/starting-activity.html#CreateActivity 在完成...

Android中在一个应用程序中定义多个Activity,及启动多个Activity

一、Android中在一个应用程序中定义多个Activity的步骤:
  • kp_liu
  • kp_liu
  • 2014年08月05日 14:37
  • 634

android 获得一个应用程序的启动次数,运行时间等信息

通过com.android.internal.os.PkgUsageStats这个类可以得到一个应用程序的启动次数,运行时间等信息,功能很强大。但是google并没有将这个类作为API接口提供给开发者...

[翻译]如何安装ACRA-一个Android应用Crash跟踪系统

[翻译]如何安装ACRA-一个Android应用Crash跟踪系统—在你自己的服务器上How to setup ACRA, an Android Application Crash Tracking ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android 在一个应用中如何启动另外一个已安装的应用!!!
举报原因:
原因补充:

(最多只允许输入30个字)