diff --git a/app/src/main/java/org/nuclearfog/twidda/database/Database.java b/app/src/main/java/org/nuclearfog/twidda/database/Database.java index e1cd7f59..45957a05 100644 --- a/app/src/main/java/org/nuclearfog/twidda/database/Database.java +++ b/app/src/main/java/org/nuclearfog/twidda/database/Database.java @@ -12,7 +12,7 @@ import java.io.File; */ public class Database { - public static final String DB_NAME = "database.db"; + private static final String DB_NAME = "database.db"; private static final String TABLE_USER = "CREATE TABLE IF NOT EXISTS user (" + "userID INTEGER PRIMARY KEY,username VARCHAR(50),scrname VARCHAR(15)," + diff --git a/app/src/main/java/org/nuclearfog/twidda/window/MediaViewer.java b/app/src/main/java/org/nuclearfog/twidda/window/MediaViewer.java index bb846239..48c89e1f 100644 --- a/app/src/main/java/org/nuclearfog/twidda/window/MediaViewer.java +++ b/app/src/main/java/org/nuclearfog/twidda/window/MediaViewer.java @@ -9,7 +9,7 @@ import android.net.Uri; import android.os.AsyncTask.Status; import android.os.Build; import android.os.Bundle; -import android.os.Environment; +import android.provider.MediaStore; import android.view.Display; import android.view.View; import android.widget.MediaController; @@ -28,8 +28,6 @@ import org.nuclearfog.twidda.adapter.ImageAdapter.OnImageClickListener; import org.nuclearfog.twidda.backend.ImageLoader; import org.nuclearfog.zoomview.ZoomView; -import java.io.File; -import java.io.FileOutputStream; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; @@ -49,6 +47,7 @@ public class MediaViewer extends AppCompatActivity implements OnImageClickListen public static final String KEY_MEDIA_LINK = "link"; public static final String KEY_MEDIA_TYPE = "mediatype"; + private static final SimpleDateFormat formatter = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss", Locale.GERMANY); private static final String[] REQ_WRITE_SD = {WRITE_EXTERNAL_STORAGE}; private static final int REQCODE_SD = 6; @@ -122,8 +121,7 @@ public class MediaViewer extends AppCompatActivity implements OnImageClickListen case VIDEO_STORAGE: videoWindow.setVisibility(VISIBLE); - File media = new File(link[0]); - video = Uri.fromFile(media); + video = Uri.parse(link[0]); videoView.setMediaController(videoController); videoView.setOnPreparedListener(this); videoView.setVideoURI(video); @@ -242,21 +240,10 @@ public class MediaViewer extends AppCompatActivity implements OnImageClickListen private void storeImage(Bitmap image) { - String path = Environment.getExternalStorageDirectory().toString(); - path += "/Pictures/Shitter"; - SimpleDateFormat formatter = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss", Locale.GERMANY); - String name = "shitter_" + formatter.format(new Date()) + ".png"; - - File dir = new File(path); - if (dir.mkdirs()) - Toast.makeText(this, R.string.image_folder_created, Toast.LENGTH_SHORT).show(); - File file = new File(dir, name); - + String name = "shitter_" + formatter.format(new Date()); try { - FileOutputStream output = new FileOutputStream(file); - image.compress(Bitmap.CompressFormat.PNG, 0, output); + MediaStore.Images.Media.insertImage(getContentResolver(), image, name, ""); Toast.makeText(this, R.string.image_saved, Toast.LENGTH_LONG).show(); - output.close(); } catch (Exception err) { Toast.makeText(this, R.string.image_store_failure, Toast.LENGTH_SHORT).show(); } diff --git a/app/src/main/java/org/nuclearfog/twidda/window/MessagePopup.java b/app/src/main/java/org/nuclearfog/twidda/window/MessagePopup.java index 13f08ad6..bed4e605 100644 --- a/app/src/main/java/org/nuclearfog/twidda/window/MessagePopup.java +++ b/app/src/main/java/org/nuclearfog/twidda/window/MessagePopup.java @@ -90,11 +90,11 @@ public class MessagePopup extends AppCompatActivity implements OnClickListener { @Override - protected void onActivityResult(int reqCode, int returnCode, Intent i) { - super.onActivityResult(reqCode, returnCode, i); - if (i.getData() != null) { - if (reqCode == REQ_PERM_READ && returnCode == RESULT_OK) { - Cursor c = getContentResolver().query(i.getData(), PICK_IMAGE, null, null, null); + protected void onActivityResult(int reqCode, int returnCode, Intent intent) { + super.onActivityResult(reqCode, returnCode, intent); + if (reqCode == REQ_PERM_READ && returnCode == RESULT_OK) { + if (intent != null && intent.getData() != null) { + Cursor c = getContentResolver().query(intent.getData(), PICK_IMAGE, null, null, null); if (c != null && c.moveToFirst()) { int index = c.getColumnIndex(PICK_IMAGE[0]); mediaPath = c.getString(index); diff --git a/app/src/main/java/org/nuclearfog/twidda/window/ProfileEdit.java b/app/src/main/java/org/nuclearfog/twidda/window/ProfileEdit.java index 3fbe5864..c800a438 100644 --- a/app/src/main/java/org/nuclearfog/twidda/window/ProfileEdit.java +++ b/app/src/main/java/org/nuclearfog/twidda/window/ProfileEdit.java @@ -104,11 +104,11 @@ public class ProfileEdit extends AppCompatActivity implements OnClickListener { @Override - protected void onActivityResult(int reqCode, int returnCode, Intent i) { - super.onActivityResult(reqCode, returnCode, i); - if (i.getData() != null) { - if (reqCode == REQ_PB && returnCode == RESULT_OK) { - Cursor c = getContentResolver().query(i.getData(), MEDIA_MODE, null, null, null); + protected void onActivityResult(int reqCode, int returnCode, Intent intent) { + super.onActivityResult(reqCode, returnCode, intent); + if (reqCode == REQ_PB && returnCode == RESULT_OK) { + if (intent != null && intent.getData() != null) { + Cursor c = getContentResolver().query(intent.getData(), MEDIA_MODE, null, null, null); if (c != null && c.moveToFirst()) { int index = c.getColumnIndex(MEDIA_MODE[0]); String mediaPath = c.getString(index); diff --git a/app/src/main/java/org/nuclearfog/twidda/window/TweetPopup.java b/app/src/main/java/org/nuclearfog/twidda/window/TweetPopup.java index ce2e4b8e..bc2a0f29 100644 --- a/app/src/main/java/org/nuclearfog/twidda/window/TweetPopup.java +++ b/app/src/main/java/org/nuclearfog/twidda/window/TweetPopup.java @@ -120,7 +120,7 @@ public class TweetPopup extends AppCompatActivity implements OnClickListener { protected void onActivityResult(int reqCode, int returnCode, Intent intent) { super.onActivityResult(reqCode, returnCode, intent); if (reqCode == PICK_MEDIA && returnCode == RESULT_OK) { - if (intent.getData() != null) { + if (intent != null && intent.getData() != null) { Cursor cursor = getContentResolver().query(intent.getData(), GET_MEDIA, null, null, null); if (cursor != null && cursor.moveToFirst()) { int index = cursor.getColumnIndex(GET_MEDIA[0]);