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>  
  • 相关阅读:
    能大大提升工作效率和时间效率的9个重要习惯
    hibernate的校验
    8. semahpore原理
    chklist
    android textview 自动换行 整齐排版
    fiddler接口测试,js代码修改日志展示(埋点用)
    Python模块之 tqdm进度条
    Python抓取网页到本地
    Python模块之 clint 进度条
    python windows下pip安装错误whl文件安装错误
  • 原文地址:https://www.cnblogs.com/nafio/p/9137402.html
Copyright © 2011-2022 走看看