diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 8850f14..8a64108 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -3,6 +3,7 @@
package="xdsopl.robot36" >
+
0) {
rsDecoderSavedWidth.copyTo(savedWidth);
rsDecoderSavedBuffer.copyTo(savedBuffer);
- Bitmap savedBitmap = Bitmap.createBitmap(savedBuffer, savedWidth[0], savedHeight[0], Bitmap.Config.ARGB_8888);
+ activity.storeBitmap(Bitmap.createBitmap(savedBuffer, savedWidth[0], savedHeight[0], Bitmap.Config.ARGB_8888));
}
}
}
diff --git a/app/src/main/java/xdsopl/robot36/MainActivity.java b/app/src/main/java/xdsopl/robot36/MainActivity.java
index 2fb9387..c4b6183 100644
--- a/app/src/main/java/xdsopl/robot36/MainActivity.java
+++ b/app/src/main/java/xdsopl/robot36/MainActivity.java
@@ -18,12 +18,22 @@ limitations under the License.
package xdsopl.robot36;
import android.app.Activity;
+import android.content.Intent;
+import android.graphics.Bitmap;
+import android.net.Uri;
import android.os.Bundle;
+import android.os.Environment;
import android.view.Menu;
import android.view.MenuItem;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
public class MainActivity extends Activity {
private ImageView view;
+ private Bitmap bitmap;
void updateTitle(final String newTitle)
{
@@ -37,6 +47,36 @@ public class MainActivity extends Activity {
}
}
+ void storeBitmap(Bitmap image) {
+ bitmap = image;
+ runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ String name = new SimpleDateFormat("yyyyMMdd_HHmmss_").format(new Date());
+ File dir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
+ if (!dir.exists())
+ dir.mkdirs();
+ File file;
+ FileOutputStream stream;
+ try {
+ file = File.createTempFile(name, ".png", dir);
+ stream = new FileOutputStream(file);
+ } catch (IOException ignore) {
+ return;
+ }
+ bitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);
+ try {
+ stream.close();
+ } catch (IOException ignore) {
+ return;
+ }
+ Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
+ intent.setData(Uri.fromFile(file));
+ sendBroadcast(intent);
+ }
+ });
+ }
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);