zoukankan      html  css  js  c++  java
  • (转)从android一个apk中启动第三方apk应用

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

     

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

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

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

    [html] view plaincopy
     
    1. <ImageButton android:id="@+id/StartQQ"  
    2.    android:layout_width="85dip"  
    3.    android:layout_height="54dip"  
    4.    android:layout_marginTop="20dip" />             

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

    [java] view plaincopy
     
    1.        private ImageButton  mStartQQButton;  
    2.   
    3.   
    4. mStartQQButton = (ImageButton) findViewById(R.id.StartQQ);  
    5. mStartQQButton.setOnClickListener(mStartQQListener);  

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

    [java] view plaincopy
     
    1. private View.OnClickListener mStartQQListener = new View.OnClickListener() {  
    2.     public void onClick(View v) {  
    3.         if (localService == null) return;  
    4.         localService.reqMusicExit();  
    5.         
    6.         Intent mIntent = new Intent( );   
    7.         ComponentName comp = new ComponentName("com.tencent.pad.qq", "com.tencent.pad.qq.login.QQLoginActivity");  
    8.         mIntent.setComponent(comp);   
    9.         mIntent.setAction("android.intent.action.VIEW");   
    10.         startActivity(mIntent);  
    11.         finish();  
    12.     }  
    13. };  

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

  • 相关阅读:
    activiti 任务节点 处理人设置【转】
    activiti 中的签收与委托 操作
    [转] shiro简单配置
    Angular-ui/bootstarp modal 主控制器与模态框控制器传值
    angular之$on、$emit、$broadcast
    AngularJs动态添加元素和删除元素
    angular.element
    angularJs的工具方法
    AngularJS $watch 监听
    AngularJs 延时器、计时器
  • 原文地址:https://www.cnblogs.com/antyi/p/3964125.html
Copyright © 2011-2022 走看看