从Android应用程序调用Last.fm API

4

我正在尝试使用这个包从Android应用程序调用last.fm API:http://www.u-mass.de/lastfm

在简单的Java命令行程序中,它可以工作,但在Android应用程序中却不能。我使用的是Windows和Eclipse。

代码本身非常简单:

 Artist artist = Artist.getInfo("Depeche Mode", "my_key");

我已在Android清单中设置了互联网权限。
 <uses-permission android:name="android.permission.INTERNET"></uses-permission> 

在调用后,我最终到达此处,它打印出“缓存失败”。http://code.google.com/p/lastfm-java/source/browse/trunk/src/de/umass/lastfm/Caller.java?spec=svn173&r=173
响应代码是-1。
int responseCode = urlConnection.getResponseCode();

有什么想法,我做错了什么吗?

它是开源的。在Eclipse中链接源代码并进入调试模式。 - rds
那就是你的问题,试图获取Depeche Mode的信息,难怪会崩溃...哈哈 - JPM
1个回答

3

我曾经也遇到过同样的问题,这是一个已知的 bug。

我找到的解决方案是:

在调用任何 API 方法之前,在你的代码中添加下面这一行代码:

Caller.getInstance().setCache(null);

注意:这会禁用缓存。

如果需要更多信息,请查看此链接


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接