diff options
author | Koushik Dutta <koushd@gmail.com> | 2012-10-17 23:21:57 -0700 |
---|---|---|
committer | Koushik Dutta <koushd@gmail.com> | 2012-10-17 23:21:57 -0700 |
commit | 5694f8fd23e8cc7b7f12f2ab3083a8285c633c73 (patch) | |
tree | 6c19052b7587019e32404b3f7373e7adfb273b58 /AndroidAsyncSample | |
parent | 1a2843bfe64ea1bf92973c7391ae03093a3b4a2b (diff) | |
download | AndroidAsync-5694f8fd23e8cc7b7f12f2ab3083a8285c633c73.tar.gz AndroidAsync-5694f8fd23e8cc7b7f12f2ab3083a8285c633c73.tar.bz2 AndroidAsync-5694f8fd23e8cc7b7f12f2ab3083a8285c633c73.zip |
support for http post
Diffstat (limited to 'AndroidAsyncSample')
4 files changed, 73 insertions, 2 deletions
diff --git a/AndroidAsyncSample/gen/com/koushikdutta/async/R.java b/AndroidAsyncSample/gen/com/koushikdutta/async/R.java index f3dd226..a260ef9 100644 --- a/AndroidAsyncSample/gen/com/koushikdutta/async/R.java +++ b/AndroidAsyncSample/gen/com/koushikdutta/async/R.java @@ -15,9 +15,10 @@ public final class R { public static final int ic_launcher=0x7f020001; } public static final class id { + public static final int chart=0x7f070004; public static final int desksms=0x7f070002; public static final int go=0x7f070000; - public static final int menu_settings=0x7f070004; + public static final int menu_settings=0x7f070005; public static final int rommanager=0x7f070001; public static final int tether=0x7f070003; } diff --git a/AndroidAsyncSample/gen/com/koushikdutta/async/sample/R.java b/AndroidAsyncSample/gen/com/koushikdutta/async/sample/R.java index b888225..4c6fd91 100644 --- a/AndroidAsyncSample/gen/com/koushikdutta/async/sample/R.java +++ b/AndroidAsyncSample/gen/com/koushikdutta/async/sample/R.java @@ -15,9 +15,10 @@ public final class R { public static final int ic_launcher=0x7f020001; } public static final class id { + public static final int chart=0x7f070004; public static final int desksms=0x7f070002; public static final int go=0x7f070000; - public static final int menu_settings=0x7f070004; + public static final int menu_settings=0x7f070005; public static final int rommanager=0x7f070001; public static final int tether=0x7f070003; } diff --git a/AndroidAsyncSample/res/layout/activity_main.xml b/AndroidAsyncSample/res/layout/activity_main.xml index 8a6e550..7522766 100644 --- a/AndroidAsyncSample/res/layout/activity_main.xml +++ b/AndroidAsyncSample/res/layout/activity_main.xml @@ -27,4 +27,9 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" /> + <ImageView + android:id="@+id/chart" + android:layout_width="wrap_content" + android:layout_height="wrap_content" /> + </LinearLayout>
\ No newline at end of file diff --git a/AndroidAsyncSample/src/com/koushikdutta/async/sample/MainActivity.java b/AndroidAsyncSample/src/com/koushikdutta/async/sample/MainActivity.java index 100fc6e..5cf7d7e 100644 --- a/AndroidAsyncSample/src/com/koushikdutta/async/sample/MainActivity.java +++ b/AndroidAsyncSample/src/com/koushikdutta/async/sample/MainActivity.java @@ -1,6 +1,10 @@ package com.koushikdutta.async.sample; import java.io.File; +import java.util.ArrayList; + +import org.apache.http.NameValuePair; +import org.apache.http.message.BasicNameValuePair; import android.app.Activity; import android.graphics.Bitmap; @@ -14,12 +18,16 @@ import android.widget.Button; import android.widget.ImageView; import com.koushikdutta.async.http.AsyncHttpClient; +import com.koushikdutta.async.http.AsyncHttpClient.StringCallback; +import com.koushikdutta.async.http.AsyncHttpPost; import com.koushikdutta.async.http.AsyncHttpResponse; +import com.koushikdutta.async.http.UrlEncodedFormWriter; public class MainActivity extends Activity { ImageView rommanager; ImageView tether; ImageView desksms; + ImageView chart; @Override public void onCreate(Bundle savedInstanceState) { @@ -37,6 +45,7 @@ public class MainActivity extends Activity { rommanager = (ImageView)findViewById(R.id.rommanager); tether = (ImageView)findViewById(R.id.tether); desksms = (ImageView)findViewById(R.id.desksms); + chart = (ImageView)findViewById(R.id.chart); } @Override @@ -64,17 +73,72 @@ public class MainActivity extends Activity { }); } + private void getChartFile() { + final ImageView iv = chart; + final String filename = getFileStreamPath(randomFile()).getAbsolutePath(); + ArrayList<NameValuePair> pairs = new ArrayList<NameValuePair>(); + pairs.add(new BasicNameValuePair("cht", "lc")); + pairs.add(new BasicNameValuePair("chtt", "This is a google chart")); + pairs.add(new BasicNameValuePair("chs", "512x512")); + pairs.add(new BasicNameValuePair("chxt", "x")); + pairs.add(new BasicNameValuePair("chd", "t:40,20,50,20,100")); + UrlEncodedFormWriter writer = new UrlEncodedFormWriter(pairs); + try { + AsyncHttpPost post = new AsyncHttpPost("http://chart.googleapis.com/chart"); + post.setContentWriter(writer); + AsyncHttpClient.execute(post, filename, new AsyncHttpClient.FileCallback() { + @Override + public void onCompleted(Exception e, AsyncHttpResponse response, File result) { + if (e != null) { + e.printStackTrace(); + return; + } + System.out.println(result.getAbsolutePath()); + Bitmap bitmap = BitmapFactory.decodeFile(filename); + result.delete(); + if (bitmap == null) + return; + BitmapDrawable bd = new BitmapDrawable(bitmap); + iv.setImageDrawable(bd); + } + }); + } + catch (Exception ex) { + ex.printStackTrace(); + } + } + private String randomFile() { return ((Long)Math.round(Math.random() * 1000)).toString() + ".png"; } private void refresh() { + ArrayList<NameValuePair> pairs = new ArrayList<NameValuePair>(); + pairs.add(new BasicNameValuePair("foo", "bar")); + UrlEncodedFormWriter writer = new UrlEncodedFormWriter(pairs); + try { + AsyncHttpPost post = new AsyncHttpPost("http://192.168.1.2:3000"); + post.setContentWriter(writer); + AsyncHttpClient.execute(post, new StringCallback() { + @Override + public void onCompleted(Exception arg0, AsyncHttpResponse response, String result) { + System.out.println(arg0); + } + }); + } + catch (Exception e) { + e.printStackTrace(); + } + + rommanager.setImageBitmap(null); tether.setImageBitmap(null); desksms.setImageBitmap(null); + chart.setImageBitmap(null); getFile(rommanager, "https://raw.github.com/koush/AndroidAsync/master/rommanager.png", getFileStreamPath(randomFile()).getAbsolutePath()); getFile(tether, "https://raw.github.com/koush/AndroidAsync/master/tether.png", getFileStreamPath(randomFile()).getAbsolutePath()); getFile(desksms, "https://raw.github.com/koush/AndroidAsync/master/desksms.png", getFileStreamPath(randomFile()).getAbsolutePath()); + getChartFile(); } } |