Android 如何从一个APP中打开另外一个APP

众所周知,在一个APP内部,从一个页面跳转到另外一个页面是使用startactivity函数来实现的。

同样的,对于应用之间的跳转也是如此的。应用直接的跳转分为三种情况,为了方便描述,我加上有两个应用A和B,需求是要从A点击一个按钮,可以跳转到B,同时A要传数据给B,B能够接收并且处理:

1.从A跳转到B的主Activity,代码如下:

Intent intent = new Intent(Intent.ACTION_MAIN);

intent.addCategory(Intent.CATEGORY_LAUNCHER);

ComponentName comp = new ComponentName("com.nbg.baby",

"com.nbg.baby.MainActivity");

intent.setComponent(comp);

int launchFlags = Intent.FLAG_ACTIVITY_NEW_TASK

| Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED;

intent.setFlags(launchFlags);

intent.setAction("android.intent.action.VIEW");

Bundle bundle = new Bundle();

bundle.putString("from", "来自测试应用");

intent.putExtras(bundle);

startActivity(intent);

1.1如果B是应用是关闭的,那么在onCreate()函数中增加如下语句:

Bundle bundle = this.getIntent().getExtras();

if(bundle!=null && bundle.getString("from")!=null){

Util.showToast(s_instance, bundle.getString("from"), Toast.LENGTH_LONG);

}

1.2 如何B应用是开启状态,那么在onRestart()函数中增加如下语句:

Bundle bundle = this.getIntent().getExtras();

if(bundle!=null && bundle.getString("from")!=null){

Util.showToast(s_instance, bundle.getString("from"), Toast.LENGTH_LONG);

}

2.从A跳转到B的某个被设置为exported的activity,B应用的状态无关紧要,代码如下:

ComponentName comp = new ComponentName("com.nbg.baby",

"com.nbg.baby.ApiLoginActivity");

Intent intent = new Intent();

intent.setComponent(comp);

intent.setAction(Intent.ACTION_VIEW);

Bundle bundle = new Bundle();

bundle.putString("extra", "我来自星星");

intent.putExtras(bundle);

context.startActivityForResult(intent, 1);

android点击另一个app,Android 怎么从一个APP中打开另外一个APP相关推荐

  1. c#点击按钮调出另一个窗体_在类库或winform项目中打开另一个winform项目窗体的方法...

    本文实例讲述了在类库或winform项目中打开另一个winform项目窗体的方法.分享给大家供大家参考.具体如下: 一.问题: 假设类库或winform项目为A,另一个winform项目为B.那麽在A ...

  2. Winforn中怎样在窗体中打开另一个窗体

    场景 在Winform的窗体A中打开另一个窗体B. 实现 //打开新的窗体 CurveCompare cc = new CurveCompare(); cc.Show(); 效果 以上代码的实现参照: ...

  3. android点击跳转卸载,[android]通过JNI实现卸载自身App后台发送Http请求~

    freddon 发表于2016-10-21 阅读 1252 | 评论 1 使用JNI fork进程实现 监控自身App被卸载 首先这个功能仅供cankao 也可以使用linux exec命令跳转到浏览 ...

  4. Android在app中打开另一个app

    打开另一个app 知道包名和MainActivity类名之后 Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(In ...

  5. android 点击返回键home,android Home键和返回键

    在Android中,当按下Home键,默认情况下stop前台的actiity,即activity设置成onstop,而不是ondestory.如果再次启动该activity不是调用onCreate,而 ...

  6. android 点击图片动画效果,Android仿微信图片点击全屏效果

    废话不多说,先看下Android图片点击全屏效果: 先是微信的 再是模仿的 先说下实现原理,再一步步分析 这里总共有2个Activity一个就是主页,一个就是显示我们图片效果的页面,参数通过Inten ...

  7. Android点击这个关闭那个,Android关闭指定的Activity或多个Activity

    接触过Android的应该都知道关闭一个Activity直接调用finish()就好啦!但项目中偶尔会遇到在某个Activity中关闭另一个Activity的需求.举个栗子,比如开发某个APP,用户从 ...

  8. android activity从新打开,【Android开发-8】生命周期,Activity中打开另一个Activity

    前言:生命中有不少人陪伴本身走过一辈子中的某段旅程,仅仅是有些人仅仅是某阶段出现,有些人却陪伴本身很是久.就像小学.中学.高中.大学,那些之前觉得会长久拥有的,当经历过天涯各地地忙碌于生活,或如意.或 ...

  9. Android筑基——Activity的启动过程之同进程在一个Activity中启动另一个Activity(基于api21)

    目录 1. 前言 2. 正文 2.1 Activity类的startActivity()方法 2.2 Instrumentation类的execStartActivity()方法 2.3 Activi ...

最新文章

  1. Java中的Set操作
  2. Linux运维常用命令总结
  3. spring 源码-context
  4. android 自定义menu背景,Android编程实现自定义系统菜单背景的方法
  5. 【Java】获取并打印当前堆栈的方法
  6. openstack kvm 虚拟机磁盘差异衍生
  7. Linux下修改系统时间的简单方法
  8. java obj1 = obj2_无障碍assertEquals(Object obj1,Object obj2),想怎么比较就怎么比较!! [ 光影人像 东海陈光剑 的博客 ]...
  9. 考研预报名即将开始,做好这些实现弯道超车
  10. Windows 8 Consumer Preview
  11. KL距离(衡量两个概率分布的差异情况)
  12. Java 库 Failsafe 2.0 发布,支持组合弹性策略
  13. 易宝支付java待遇_Java学员张**入职易宝支付月薪12000元
  14. 工程师总结:PCB设计中降低噪声与电磁干扰的方法
  15. 如何系统地学习3D建模!教你零基础入门,初学者看过来
  16. 「标签管理」使用标签管理有道云笔记资料
  17. MOOS-ivp 实验三 MOOS简介(1)
  18. 小甲鱼python入门_python基础笔记(非系统/自用/参考小甲鱼的零基础入门学习python)上...
  19. 白炽灯和led哪个护眼?分享真正适合孩子的护眼台灯
  20. 侃谈移动端音视频发展与现状

热门文章

  1. c++--STL迭代器相关辅助函数
  2. mysql中游标能不能更新数据库_数据库游标更新数据
  3. CCF CSP202012-2期末预测之最佳阈值
  4. C#设计模式——简单工厂模式
  5. 手机电量剩一半就充比较好,还是快没电了再充比较好?为什么?
  6. 昨天和一位成功的创业者聊天,他说了一番话,有价值,与大家分享
  7. 企业不同时期该如何做股权布局?
  8. 大家的第一次创业钱是通过什么方式得到的呢?
  9. CMake的简单使用
  10. Qt4_Hello world