通常、HTMLの解析に正規表現を使用するべきではありません。代わりにJSoupを使用してみてください-もう少し実用的です。
jsoup JARをフェッチし、プロジェクトに追加して、次のようにします。
class SpotifyTask extends AsyncTask<String, Void, List<String>> {
@Override
protected List<String> doInBackground(String... params) {
ArrayList<String> res = new ArrayList<String>();
try {
Document doc = Jsoup.connect(params[0]).get();
// CSS-style selectors are your new best friend when scraping!
Elements coverArts = doc.select("img[id=cover-art]");
for (Element coverArt : coverArts) {
String url = coverArt.absUrl("src");
if (!TextUtils.isEmpty(url)) {
res.add(url);
}
}
} catch (IOException e) {
Log.w(TAG, "Error processing document", e);
}
return res;
}
@Override
protected void onPostExecute(List<String> result) {
Log.i(TAG, "Do something with your links: " + result);
}
}
あなたの活動でこのように始めてください:
new SpotifyTask().execute("http://open.spotify.com/track/296mPMQavmf1vvxYrUvLN8");