从android一个apk中启动第三方apk应用

来源:互联网 发布:足球赛程安排软件 编辑:程序博客网 时间:2024/05/17 03:04

转自:http://blog.csdn.net/edsam49/article/details/8308891


我们在开发中,经常遇到遇到在一个apk中要去运行另外一个apk,就像我们windows一样,搞一个快捷方式一样,那怎么实现呢?

        问题的核心点在于我们要拿到第三方apkpackage名称跟class名称,这两个至关重要!比如笔者做测试用的qq apkpackage名称是com.tencent.pad.qqclass名称是com.tencent.pad.qq.login.QQLoginActivity。从一个apk启动到另外一个apk,当然也是通过发送intent了。下面介绍一下几个简单步骤:

1、                  为了直观还是建立一个图标比较好。在android里有ImageButton控件可以使用。在XML里定义如下:


             <ImageButton android:id="@+id/StartQQ"                android:layout_width="85dip"                android:layout_height="54dip"                android:layout_marginTop="20dip" />           


2、                  注册消息处理函数。也就是你点击该图标的时候,要做什么响应。注册代码如下:


        private ImageButtonmStartQQButton;mStartQQButton = (ImageButton) findViewById(R.id.StartQQ);mStartQQButton.setOnClickListener(mStartQQListener);



3、                  准备intent,发送intent。代码如下:


    private View.OnClickListener mStartQQListener = new View.OnClickListener() {        public void onClick(View v) {            if (localService == null) return;            localService.reqMusicExit();                      Intent mIntent = new Intent( );             ComponentName comp = new ComponentName("com.tencent.pad.qq", "com.tencent.pad.qq.login.QQLoginActivity");            mIntent.setComponent(comp);             mIntent.setAction("android.intent.action.VIEW");             startActivity(mIntent);            finish();     }    };

这只是一个实例,掌握了这种方法,我们就可以开发出类似windows快捷图标栏,就很可以随心所欲,开发出客户喜欢的产品。 笔者顺便提一句,这个做法一定要在有代码的apk应用中去定制,比如在launcher中,还是自己开发的apk中。

0 0