- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试从 Last.fm 获取艺术家图像并将其应用到 ImageView
,但没有返回任何图像。我不确定我在这里做错了什么。
private void setLastFmArtistImage() {
try {
String imageurl = "http://ws.audioscrobbler.com/2.0/?method=artist.getimages&artist="
+ URLEncoder.encode("Andrew Bird")
+ "&api_key="
+ APIKEY
+ "&limit=" + 1 + "&page=" + 1;
InputStream in = null;
Log.i("URL", imageurl);
URL url = new URL(imageurl);
URLConnection urlConn = url.openConnection();
HttpURLConnection httpConn = (HttpURLConnection) urlConn;
httpConn.connect();
in = httpConn.getInputStream();
Bitmap bmpimg = BitmapFactory.decodeStream(in);
mArtistBackground.setImageBitmap(bmpimg);
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
最佳答案
您尝试使用的 API 返回 XML,不是图像。您需要解析响应并从响应中选择适当的图像 URL。
API documentation非常详尽,查看每个人最喜欢的艺术家的示例响应,Benny Hill , 会给你足够的方向来找到合适的图像来显示。
编辑:有关API 的示例,您可以查看官方Last.fm client。 - 但要注意,这是 GPL3 许可的东西,除非你想发布你的源代码,否则你不应该过多地使用复制和粘贴。
编辑(再次):对于一个未被 GPL3 污染的例子,试试这个:
(该示例使用友好的 XML 解析器 JSoup)
public List<LastFmImage> getLastFmImages(String artistName, int limit, int page) throws IOException {
String apiUrl = "http://ws.audioscrobbler.com/2.0/?method=artist.getimages&artist="
+ URLEncoder.encode(artistName)
+ "&api_key="
+ APIKEY
+ "&limit=" + limit + "&page=" + page;
Document doc = Jsoup.connect(apiUrl).timeout(20000).get();
Elements images = doc.select("images");
ArrayList<LastFmImage> result = new ArrayList<LastFmImage>();
final int nbrOfImages = images.size();
for (int i = 0; i < nbrOfImages; i++) {
Element image = images.get(i);
String title = image.select("title").first().text();
Elements sizes = image.select("sizes").select("size");
final int nbrOfSizes = sizes.size();
for (int j = 0; j < nbrOfSizes; j++) {
Element size = sizes.get(i);
result.add(new LastFmImage(title, size.text(),
size.attr("name"),
Integer.parseInt(size.attr("width")),
Integer.parseInt(size.attr("height"))));
}
}
return result;
}
还有 LastFmImage 类:
public class LastFmImage {
public String mTitle;
public String mUrl;
public String mName;
public int mWidth;
public int mHeight;
public LastFmImage(String title, String url, String name, int width, int height) {
mTitle = title;
mUrl = url;
mName = name;
mWidth = width;
mHeight = height;
}
}
关于java - Last.fm 不会返回艺术家图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8999173/
你们中有人有如何从 iPod 媒体库中检索所有音乐专辑或艺术家的示例代码(或其链接)吗? 提前致谢! 最佳答案 使用 MPMediaQuery: MPMediaQuery *allAlbumsQuer
我对此进行了大量研究,但找不到任何解决该特定主题的内容。 我想要获取当前用户库中的所有艺术家,甚至只是特定播放列表中的所有艺术家,例如“加星标”播放列表。 当我尝试进入播放列表中的艺术家或轨道时,我得
我制作了一个连接到 radio 并使用 MediaPlayer 播放其音频的程序。我想打印艺术家、歌名……但我不知道怎么做。 我尝试使用 MediaStore.Audio.Media.ARTIST 执
我希望设置一种方法,可以将正常图形(深色线条、白色/透明背景)转换为伪倒置图形(浅色线条、黑色/透明背景)。我可以对图像进行后期处理,但直接反转的颜色看起来很糟糕,所以我想改为(尝试)创建从一组颜色到
我用 matplotlib 创建了一个 Line2D 对象数组,我想在各种绘图中使用它们。但是,在多个情节中使用相同的艺术家不起作用,因为我得到: RuntimeError: Can not put
与音乐应用程序非常相似,我想访问歌曲的名称(而不是文件的名称)或艺术家或专辑。例如,我想用手机上所有歌曲的名称填充一个 ListView 。 最佳答案 有两种方法,一种是从音乐文件本身读取元标记,另一
我正在 Android 中开发一个音乐应用程序,当检索歌曲的专辑、艺术家、流派名称时,我得到了一些未知名称。 对于专辑,未知的专辑名称显示为“音乐”。对于艺术家,未知艺术家名称显示为“”对于流派,未知
我一直在尝试使用 php5-ffmpeg 扩展来获取远程 mp3(和其他格式)元数据。 尽管我总是缺少标题、作者、评论、艺术家详细信息,但它正在工作。 我一直在网上搜索答案,但没有找到任何解决方案。
mp3 ID Title Description 标签 ID Title 艺术家 ID Title 艺术家关系 mp3ID //call to mp3s.ID artistID // call to
我正在尝试通过项目上的按钮链接到艺术家的 iTunes“页面”。我试过使用他们的 safari 页面,例如“http://itunes.apple.com/au/artist/blink-182/id
我有一个带有艺术家和标题的动态音频播放器。它工作正常,但在移动 View 中,艺术家和标题突出了我的 div。 这是一张图片: 我希望艺术家 - 标题(当用户的屏幕变长时)仅在下方显示一行。 我已经通
我用一组像这样的图像制作了一个动画(10张快照): import numpy as np import matplotlib.pyplot as plt from matplotlib.patches
我正在尝试使用以下代码获取我在 Java 项目中使用的 .wav 文件的属性。但是,当我运行此代码时,方法 format.getProperty("title")、format.getProperty
我想知道我是否可以获取 mp3 文件信息,如专辑名称、艺术家、存储在 mp3 文件中的图像等等?如果有办法做到这一点,请帮忙。顺便说一句:我创建了一个名为 Entagged 的 Java 库,但我
我需要它: https://github.com/danielamitay/DAAppsViewController 代码是: DAAppsViewController *appsViewContro
我正在开发一个使用 Vue 构建的供个人使用的 PWA,其功能基本上与 YouTube Music 相同,而无需每月付费。 我设置了一个带有 REST API 的服务器,该服务器可以根据查询搜索 Yo
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 8 年前。
我想为 Windows Phone 7 创建一个简单的音频播放器。 如何获得歌曲、艺术家、专辑、流派和播放我选择的项目的方法的列表?类似于原生 wp7 应用程序“音乐+视频”中的内容 第二个问题: 我
以前可以使用 MediaLibrary 访问 Albums、Genres 等 using(MediaLibrary library = new MediaLibrary()) { SongCo
我在配置 URL 以将特定艺术家音乐的 RSS 提要加载到我的应用程序时遇到问题。我正在使用 dev.apple 上可用的 itunes XMLPerformace 测试 Xcode 项目。我只是想改
我是一名优秀的程序员,十分优秀!