1. Instead of killing the activity when done, load up a URL in a browser instead.
[zxing.git] / android / src / com / google / zxing / client / android / wifi / Killer.java
index dcb8955..e26aedd 100644 (file)
@@ -19,7 +19,13 @@ package com.google.zxing.client.android.wifi;
 import java.util.Timer;
 import java.util.TimerTask;
 
+import com.google.zxing.client.android.R;
+
 import android.app.Activity;
+import android.app.AlertDialog;
+import android.content.ActivityNotFoundException;
+import android.content.Intent;
+import android.net.Uri;
 import android.os.Handler;
 
 /**
@@ -36,6 +42,20 @@ final class Killer implements Runnable {
   Killer(Activity parent) {
     this.parent = parent;
   }
+  void launchIntent(Intent intent) {
+    if (intent != null) {
+      intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
+      try {
+        parent.startActivity(intent);
+      } catch (ActivityNotFoundException e) {
+        AlertDialog.Builder builder = new AlertDialog.Builder(parent);
+        builder.setTitle(R.string.app_name);
+        builder.setMessage(R.string.msg_intent_failed);
+        builder.setPositiveButton(R.string.button_ok, null);
+        builder.show();
+      }
+    }
+  }
 
   public void run() {
     final Handler handler = new Handler();
@@ -45,7 +65,10 @@ final class Killer implements Runnable {
       public void run() {
         handler.post(new Runnable() {
           public void run() {
-            parent.finish();
+            // This will kill the parent, a bad idea.
+//            parent.finish();
+            // This will start the browser, a better idea
+            launchIntent(new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com/")));
           }
         });
       }