android实现QQ游戏大厅一样的启动第三方APP

之前试验了一下统一登陆,用contentprovide可以实现数据共享,但现在遇到一个问题:

启动第三方APP的时候,有两种情况:

一:第三方APP已经启动

这情况就应该类型于按桌面快捷方式一样重现第三方APP的界面,而不是启动一个新的界面。

二:第三方APP未启动,这类型应该启动一个新的第三方APP,但不能在本APP的task上面。

刚测试了好几种flag搭配,现将实现方式呈现如下:

						
						ComponentName componetName = new ComponentName("com.xx.ac", "com.xx.ac.XActivity");//签名参数是包名,后面参数是包名+类名[应用入口类的类名]
						Intent intent = new Intent();
						intent.setComponent(componetName);
						intent.setAction(Intent.ACTION_MAIN);//
						intent.addFlags(Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
						intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
						intent.addCategory(Intent.CATEGORY_LAUNCHER);
						context.startActivity(intent);

相关flag可以参考另一篇博文:http://blog.csdn.net/lijunhuayc/article/details/43404951

intent携带参数未测试是否可以传递,有兴趣的可以自己试一试哈~~~

注意:如果目标activity是singleInstance的话,需要涉及到activity 的

protected void onNewIntent(Intent intent) 方法使用

时间: 2024-10-10 07:05:06

android实现QQ游戏大厅一样的启动第三方APP的相关文章

转发 :QQ游戏百万人同时在线服务器架构实现

QQ游戏于前几日终于突破了百万人同时在线的关口,向着更为远大的目标迈进,这让其它众多传统的棋牌休闲游戏平台黯然失色,相比之下,联众似乎已经根本不是QQ的对手,因为QQ除了这100万的游戏在线人数外,它还拥有3亿多的注册量(当然很多是重复注册的)以及QQ聊天软件900万的同时在线率,我们已经可以预见未来由QQ构建起来的强大棋牌休闲游戏帝国. 服务器程序,其可承受的同时连接数目是有理论峰值的,通过C++中对TSocket的定义类型:word,我们可以判定这个连接理论峰值是65535,也就是说,你的单

《冰球撞击》Android休闲桌球类游戏现已面试,快来下载吧!

<冰球撞击>Android休闲桌球类游戏现已完工上市快来下载吧! http://pan.baidu.com/s/1dD9vIRv <冰球撞击>是一个类似玩投篮机操作方式的Android桌球游戏,游戏中你需要点击屏幕,然后朝着想要撞击的瓶子的方向滑动并估计距离给予冰球速度与力道,然后迅速释放手指,冰球将会按照你的意志去撞击瓶子,如果撞到就加分,在30秒内撞倒所有瓶子游戏胜利,否则游戏失败,这个游戏就是这么简单与好玩,还在等什么呢?快开客本人的博客,主要集中本人游戏应用,在这里你可以下

Android 模仿QQ风格的 UI

本文内容 环境 演示模仿QQ风格的界面 本文主要演示的是 UI,如何模仿 QQ 风格的界面. 下载 Demo 环境 Windows 2008 R2 64 位 Eclipse ADT V22.6.2,Android 4.4.3 SAMSUNG GT-I9008L,Android OS 2.2.2   演示模仿QQ风格的 UI   程序启动时,有一个启动动画,如图 1 所示.之后进入登录页面,如图 2 所示,点击"登录"按钮后,进入主程序界面. 图 1 启动动画 图 2 登录界面和点击&q

android 仿QQ手机版

千人2群开启,欢迎大家围观打酱油,群号145667827 您当前位置 : JavaApk-安卓应用游戏源码服务专家 » QQ » Android项目源码界面超级华丽的仿QQ最新版本 Android项目源码界面超级华丽的仿QQ最新版本 05 2014.05 作者:JavaApk   发布:2014-05-05 12:40   字符数:222   分类:QQ, VIP源码, 即时聊天   阅读: 2,392 次   18条评论 本项目是一个高仿QQ最新版本的项目,界面超级华丽,使用了大量的自定义控件

(转)从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,当然也是

Android中如何在应用A中启动或安装应用B

看到别人做的游戏攻略,想着自己的游戏攻略也添加新的功能,即Android中如何在应用A中启动或安装应用B,就查了一些资料整理下来. 启动或安装相应的应用的方法: Step1:判断是否安装目标应用.只要知道目标应用的安装包名就可以通过判断"/data/data/packagename"是否存在来实现. /** * 判断是否安装目标应用 * @param packageName 目标应用安装后的包名 * @return 是否已安装目标应用 * @author zuolongsnail */

第四十一天 一乐在其中—Android的小游戏打飞机(五)添加背景

8月10日,晴."寒蝉凄切,对长亭晚,骤雨初歇." 上篇已经加载了敌机,本篇主要添加背景画面. 本篇要用到的几个函数讲解: 1.addChild(CCNode child, int z):两个参数,第一个要加入场景的对象,第二个是绘制层的顺序,默认参数值为0,表示最高优先层导入,该值越大表示该层在最后加载(在最高一层),一般背景图层是首先加载,其它元素在加载在背景层上面.因为背景在后面加载的话,会覆盖掉前面加载的元素,看不到想要的图层组合效果. 2.schedule(String se

Android中启动第三方应用

主要是通过包名启动第三方应用,获取去包名的方法网上很多,就不多说了. 两种方式启动: 第一种: Intent intent = new Intent(); intent.setClassName("要启动应用的包名", "要启动应用的activity"); startActivity(intent); 第二种: Intent intent = new Intent(); intent = MainActivity.this.getPackageManager().g

Android斗地主棋牌游戏牌桌实现源码下载

本次给大家分享下Android斗地主棋牌游戏牌桌实现源码下载如下:为了节约内存资源,每张扑克牌都是剪切形成的,当然这也是当前编程的主流方法. 1.主Activity    package com.bison;            import android.app.Activity;      import android.content.pm.ActivityInfo;      import android.os.Bundle;      import android.view.Wind