mirror of
https://github.com/xdsopl/robot36.git
synced 2025-12-06 07:12:07 +01:00
store Bitmap as PNG in Pictures directory
This commit is contained in:
parent
88a13d9a9b
commit
2c52be93cd
|
|
@ -3,6 +3,7 @@
|
|||
package="xdsopl.robot36" >
|
||||
|
||||
<uses-permission android:name="android.permission.RECORD_AUDIO" />
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
||||
<application
|
||||
android:allowBackup="true"
|
||||
android:icon="@drawable/ic_launcher"
|
||||
|
|
|
|||
|
|
@ -335,7 +335,7 @@ public class ImageView extends SurfaceView implements SurfaceHolder.Callback {
|
|||
if (savedHeight[0] > 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));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
Loading…
Reference in a new issue