class WidgetProvider extends AppWidgetProvider {
...
...
RemoteViews remoteViews;
private void updateAppWidget(Context context, AppWidgetManager appWidgetManager, int appWidgetId) throws ClientProtocolException, IOException
{
remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget);
...
new Downloader().execute("http://www.hwlogos.com/test.json");
...
}
private class Downloader extends AsyncTask<String, String, String> {
protected String doInBackground(String... urls) {
String html = "";
try {
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet(urls[0]);
HttpResponse response;
response = client.execute(request);
InputStream in = response.getEntity().getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
StringBuilder str = new StringBuilder();
String line = null;
while((line = reader.readLine()) != null)
{
str.append(line);
}
in.close();
html = str.toString();
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return html;
}
protected void onPostExecute(String result) {
Log.i("ERROR", "RECEIVED ID: " + remoteViews.toString());
Log.i("ERROR", "RECEIVED HTML: " + result);
remoteViews.setTextViewText(R.id.ip, result);
}
}
}