last.fmからリクエストを送信しようとしています。ここで、入力したアーティストから同様のアーティストを取得します。このエラーが発生します:java.net.UnknownHostException:ws.audioscrabbler.com-なぜですか?これは後でリストされることを意図していますが、どういうわけか私は彼らのAPIに「入り込む」とは思いません。ボタンを押しても何も起こりませんが、LogCatでは約25の警告が表示されます。たぶん、reuestは通過しますが、私は何も表示しません。この例を別のサイトで別の円周率で試したところ、うまくいきました。
// 主要
package com.example.eserviceapp;
import android.os.Bundle;
import android.app.Activity;
import java.net.URL;
import java.util.ArrayList;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserFactory;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
public class Eservice_main extends Activity {
ArrayList<String> list = new ArrayList<String>();
ArrayAdapter aa;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button enterButton = (Button) findViewById(R.id.enter);
enterButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
list = new ArrayList<String>();
EditText artistText = (EditText) findViewById(R.id.artisttext);
String artistNWS = artistText.getText().toString().replace(' ', '+');
String apiKey = "&api_key=b25b959554ed76058ac220b7b2e0a026";
URL text;
try {
text = new URL("http://ws.audioscrobbler.com/2.0/?method=artist.getSimilar&artist=cher&api_key=1e1f63e2c64fd7d8a7340cbbc3e365c3");
XmlPullParserFactory parserCreator = XmlPullParserFactory.newInstance();
XmlPullParser parser = parserCreator.newPullParser();
parser.setInput(text.openStream(), null);
int parserEvent = parser.getEventType();
String tagName;
int i = 0;
while (parserEvent != XmlPullParser.END_DOCUMENT) {
switch (parserEvent) {
case XmlPullParser.START_TAG:
tagName = parser.getName();
System.out.println(tagName);
if (tagName.equals("name"))
{
list.add(parser.nextText());
}
break;
}
parserEvent = parser.next();
}
} catch (Exception e) {
e.printStackTrace();
}
aa = new ArrayAdapter(Eservice_main.this,
android.R.layout.simple_list_item_1, list);
ListView lw = (ListView) findViewById(R.id.listView1);
lw.setAdapter(aa);
}
});
}
}