今天有个***需求,需要在app内打开系统图库 仅仅是打开 不需要选择照片什么的 就是打开就行了 让用户自己去选择
查了好多资料都不行 有点头疼了 什么
val intent = Intent(Intent.ACTION_VIEW)啥啥的都不行 这些都是打开带选择的那种图库
我仅仅需要打开 怎么办呢 以下就是解决办法 可以类似打开其他系统app 或者是其他app
val mainIntent = Intent(Intent.ACTION_MAIN, null)
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER)
var mApps = context.getPackageManager().queryIntentActivities(mainIntent, 0)
val list = ArrayList<ResolveInfo>()
mApps.filter { it.activityInfo.packageName.contains("gallery") }//筛选图库包名
.forEach{
list.add(it)
}
val intent =
context.packageManager.getLaunchIntentForPackage(list[0].activityInfo.packageName);
startActivity(intent)
如果不放心仅仅是筛选包名 或者不放心 list[0] 可能不是
可以在list中在判断一下appName 是不是你要打开的应用名
这个做法肯定不是最好的 如果有更好的 希望大佬给以解答提示更好的方法!!!
灵感来自
https://github.com/GrowUpTang/HomeLauncher
和
https://github.com/dabai2017/AppList
两个很简单的项目 给了我这个解决方案
版权声明:本文为qq_42535851原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。