在浏览器中显示android app图标

时间:2012-07-17 14:22:15

标签: java android

我正在使用以下代码检索Android应用程序图标:

Drawable icon = icon = p.applicationInfo.loadIcon(context.getPackageManager());

其中p是PackageInfo类对象。

我已经为android实现了一个处理客户端请求和响应的服务器。当我从我的浏览器客户端发送GET request时,服务器会生成一个html页面。

问题是我需要在html页面上显示检索到的Android安装的应用程序图标,我使用以下代码来执行此操作:

returnHtml += "<tr>";
returnHtml += "<td><img src=" + icon +" /></td>";
returnHtml += "<td>" + apps[0] + "</td>";
returnHtml +="<td>" + apps[1] + "</td>";
returnHtml += "<td>" + apps[2] + "</td>";
returnHtml +="<td>" + apps[3] + "</td>";
returnHtml +="</tr>";

基本上,我在这里生成一个带有相应应用信息的表格行,并在第一列显示相应的应用程序图标。但它没有显示相应的应用程序图标而是显示默认图标图像(带有问号的小图像)。

“icon”是“Android Drawable”类对象。我是否需要将检索到的图标转换为某种形式,或者我需要先将图标存储在某个文件夹中?

由于我的html页面存储在assets不可写的文件夹中,我无法在那里存储图标图像。是否有任何解决方案只能直接从可绘制对象显示图标图像?

1 个答案:

答案 0 :(得分:0)

你在使用fromHtml吗? http://developer.android.com/reference/android/text/Html.html#fromHtml(java.lang.String,android.text.Html.ImageGetter,android.text.Html.TagHandler)

Html.ImageGetter有一个参数,它允许你将src字符串解析为Drawable。