Så här långt har jag kommit nu:
Kod:
package com.Pajn.sharkremote;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.URI;
import java.util.List;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import com.google.gson.Gson;
import android.app.ListActivity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.widget.ArrayAdapter;
public class Playlists extends ListActivity {
String gsauth;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list);
SharedPreferences settings = getSharedPreferences("sharkremote", 0);
gsauth = settings.getString("gsauth", null);
if (gsauth == null) {
Intent intent = new Intent(Playlists.this, Login.class);
startActivity(intent);
}
gsPlaylists objs = null;
try{
Gson gson = new Gson();
Reader r = new InputStreamReader(getJSONData("http://1.apishark.com/getUserPlaylistsEx/gsauth/" + gsauth));
objs = gson.fromJson(r, gsPlaylists.class);
for(Playlist pl : objs.getPlaylists()){
//TODO?
}
}catch(Exception ex){
ex.printStackTrace();
}
setListAdapter(new ArrayAdapter(this, android.R.layout.simple_list_item_1, objs.getPlaylists()));
}
public class gsPlaylists {
private Boolean Success;
private List<Playlist> playlists;
public Boolean getSuccess() {
return Success;
}
public void setSuccess(boolean success) {
Success = success;
}
public List<Playlist> getPlaylists() {
return playlists;
}
public void setPlaylists(List<Playlist> gsplaylists) {
this.playlists = gsplaylists;
}
}
public class Playlist {
private int PlaylistID;
private String Name;
private String Url;
private int ModifiedTime;
public int getPlaylistID() {
return PlaylistID;
}
public void setPlaylistID(int PlaylistID) {
this.PlaylistID = PlaylistID;
}
public String getName() {
return Name;
}
public void setName(String name) {
this.Name = name;
}
public String getUrl() {
return Url;
}
public void setUrl(String url) {
this.Url = url;
}
public int getModifiedTime() {
return ModifiedTime;
}
public void setModifiedTime(int ModifiedTime) {
this.ModifiedTime = ModifiedTime;
}
}
public InputStream getJSONData(String url){
DefaultHttpClient httpClient = new DefaultHttpClient();
URI uri;
InputStream data = null;
try {
uri = new URI(url);
HttpGet method = new HttpGet(uri);
HttpResponse response = httpClient.execute(method);
data = response.getEntity().getContent();
} catch (Exception e) {
e.printStackTrace();
}
return data;
}
}
Det mest irriterande är att jag inte kan testa om det funkar någorlunda eftersom appen krachar när jag försöker starta Activityn Player med felmeddelandet:
Kod:
06-08 18:25:27.170: ERROR/AndroidRuntime(572): Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x7f030005
Resuource ID't pekar på layout/player.xml så den finns. Om jag tar bort list.xml och ändrar playlist Activityn (den jag klistrade in här uppe) till nån annan layout så funkar det??? Inget av det har ju med Player att göra.