获取未安装apk文件的图标

本文详细介绍了如何通过反射机制获取apk图标的过程,并分享了从百度和google搜索中获得的关键点,最后提供了灵感来源的网站链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如题,一开始也不知到如何获取apk图标,后来在百度上找,多TMD的同一个内容(天下文章一大抄),而且还要通过反射机制,这太复杂。

我再用google去搜索,发现这么一段关键点:

// the secret are these two lines....
 pi.applicationInfo.sourceDir       =APKFilePath;
 pi.applicationInfo.publicSourceDir =APKFilePath;//

所以仿造去写自己的代码:

int colnumData = mCursor.getColumnIndexOrThrow(DownloadManager.COLUMN_LOCAL_URI);
            Uri uri = Uri.parse(mCursor.getString(colnumData)+"");
            String path = uri.getPath();
            PackageInfo pi = pm.getPackageArchiveInfo(path, 0);
            if(pi != null){
                ApplicationInfo appInfo = pi.applicationInfo;
                pi.applicationInfo.sourceDir       = path;
                pi.applicationInfo.publicSourceDir = path;
                Drawable icon = pm.getApplicationIcon(appInfo);
                iconView.setImageDrawable(icon);
            }

万事ok,可以获取apk图标。

有一个网站比较好:http://stackoverflow.com/,此次的问题解决,灵感来源于此。大笑

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值