zoukankan      html  css  js  c++  java
  • Android 跨应用调用Activity


    http://blog.csdn.net/ouyangliping/article/details/7972141

    如何调用另外一个app应用的activity或者service,本文提供一个验证可行的方法。


    调用方法:

    [java] view plain copy
    1. <pre name="code" class="java"><pre name="code" class="java">Intent intent=new Intent("youActionName");  
    2. intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);   
    3. intent.addCategory(Intent.CATEGORY_DEFAULT);  
    4. intent.putExtra("type",inType);  //if needed  
    5. ComponentName cn=new ComponentName("applicationPackageName","packagename+classname");  
    6. intent.setComponent(cn);  
    7. startActivity(intent);  </pre>  
    8. <pre></pre>  
    9. <pre></pre>  
    10. </pre>  

    在被调用的App里面需要定义 class (activity 或 service)属性和filter。需要明确的几点
    1. 如果不是action.Main,则需要主动申明android:exported="true",允许外部访问(调用非主Activity注意这个)
    2. action name 要一致
    3. category name要一致,如果调用的地方没有明确声明,被调用的地方要声明DEFAULT
    [java] view plain copy
    1. <activity android:name=".pbap.BluetoothPbapLuancherActivity"   
    2.             android:label="Bluetooth"  
    3.             android:exported="true"  
    4.             android:process="@string/process">  
    5.     <intent-filter>                                 
    6.         <action android:name="android.intent.action.MAIN" />  
    7.         <category android:name="android.intent.category.DEFAULT" />   
    8.     </intent-filter>  
    9. </activity>  
  • 相关阅读:
    eclipse中在线添加TestNG插件步骤(需联网)
    [IOI2008] Type Printer 打印机
    P2765 魔术球问题
    [HNOI2004]敲砖块
    P3931 SAC E#1
    [WC2005]友好的生物
    P1357 花园
    [SDOI2016]征途
    [APIO2014]序列分割
    [HNOI2008]玩具装箱TOY
  • 原文地址:https://www.cnblogs.com/nafio/p/9137402.html
Copyright © 2011-2022 走看看