6.4 程序管理器中的应用启动&卸载&分享
来源:互联网 发布:世界观庞大的小说 知乎 编辑:程序博客网 时间:2024/05/21 15:47
/**
* 卸载 app
*/
public void unistallApp(){
Intent intent = new Intent();
intent.setAction(Intent. ACTION_DELETE);
intent.addCategory(Intent. CATEGORY_DEFAULT);
intent.setData(Uri. parse("package:" + clickAppInfo.getPackName()));
startActivityForResult(intent, 0);
}
//卸载之后告诉程序管理器界面重新填充数据,否则卸载之后的app还会出现在lv中
// 方法1: onactivityResult
@Override
protected void onActivityResult( int requestCode, int resultCode, Intent data) {
fillDateToLIst();
super.onActivityResult(requestCode, resultCode, data);
}
// 方法2: 发送一条自定义广播
< receiver android:name= "xxxx">
<intent-filter >
<action android:name= "android.intent.action.PACKAGE_REMOVED" />
</intent-filter >
</receiver >
//---------------------------------------------------------------------------------------
/**
* 分享应用: 激活系统短信应用
*/
public void shareApp(){
/* <action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="image/*" />*/
Intent intent= new Intent();
intent.setAction( "android.intent.action.SEND");
intent.addCategory( "android.intent.category.DEFAULT");
intent.setType( "image/*");
//分享内容
intent.putExtra(intent. EXTRA_TEXT, "推荐一款软件:" +clickAppInfo .getAppName()+
",下载网址是:" +"http://play.google.com/store/apps/details?id=" +clickAppInfo .getPackName());
startActivity(intent);
}
//---------------------------------------------------------------------------------------
/**
* 启动 App的方法: 意图开启应用的第一个activity
*/
public void startApp(){
// 查找当前应用程序里面的第一个activity. 激活他.
PackageManager pm = getPackageManager();
try {
//懒加载
PackageInfo packInfo = pm.getPackageInfo(
clickAppInfo.getPackName(), PackageManager.GET_ACTIVITIES );
ActivityInfo[] infos = packInfo.activities;
if (infos != null && infos. length > 0) {
ActivityInfo activityInfo = infos[0];
String className = activityInfo.name;
Intent intent = new Intent();
intent.setClassName( clickAppInfo.getPackName(), className);
startActivity(intent);
} else {
Toast. makeText(this, "没有找到入口activity", 0).show();
}
} catch (NameNotFoundException e) {
e.printStackTrace();
Toast. makeText(this, "无法启动该应用", 0).show();
}
}
--------------------------------------------------------
问题:自己开启自己的时候出现重复加载相同的activity
指定软件管理的activity的启动模式为: singleTask
<!--软件管理的activity -->
<activity
android:name= "com.itheima.mobilesafe.AppManagerActivity"
android:theme= "@android:style/Theme.Light.NoTitleBar"
android:launchMode= "singleTask"
></activity >
- 6.4 程序管理器中的应用启动&卸载&分享
- 34、程序管理器--显示卸载、启动、分享的PopupWindow界面设计
- 36、程序管理器--显示卸载、启动、分享的代码实现
- 35、程序管理器--显示卸载、启动、分享的PopupWindow代码实现
- android应用启动,卸载,分享应用
- 程序的启动、卸载和分享
- 卸载,分享,启动
- Android源码--程序的分享、卸载、启动及详细信息
- 【android开发】手机应用管理器的实现之实现对应用程序的运行、分享、卸载功能(三)
- 安卓应用安装,卸载,启动,分享,创建桌面快捷图标
- Android 安装,启动,卸载应用
- Android中启动,分享,卸载应用程序
- Android中实现卸载、启动、分享功能
- 3、软件管理(卸载、启动、分享)
- app版本更新,安装,卸载,启动,分享
- 通过点击事件开启,分享,卸载应用
- 一键锁屏,激活设备管理器,卸载应用,清除数据
- fedora 自动启动的程序管理器
- objdump .
- 数据挖掘领域顶级会议期刊及其分析
- SQL Server游标的使用
- Gesture Recognition Toolkit
- 查看oracle执行计划
- 6.4 程序管理器中的应用启动&卸载&分享
- Eclipse开发Android的配置-ADT安装,SDK配置
- FreeMarker整合Spring 3
- iphone之NSUserDefaults
- 6.5 获取桌面快捷图标
- 关键帧和动画
- Hashtable判断两个value相等的标准
- SSD及其在数据库中的应用 (四)SQLServer中的应用
- 排序算法--冒泡排序