- Forum posts: 1
Oct 8, 2017, 6:05:02 PM via Website
Oct 8, 2017 6:05:02 PM via Website
Hi guys, I am Daniel, I am just getting started with android development and I have done some simple apps one of which is a photo editor, Now I have added a MY COLLECTION tab on the app where the users can see the photos they just edited but I am not sure why the photos are not showing up in the phone gallery. Here is My code (part of the main code)
Done.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
//Effects.getInstance().playSound(Effects.SOUND_1);
try {
ccmCurrentView.setInEdit(false);
} catch (Exception e) {
e.printStackTrace();
}
// tv_appName.setVisibility(View.VISIBLE);
Intent localIntent1 = new Intent(getApplicationContext(), Finalactivity.class);
draglout.setDrawingCacheEnabled(true);
draglout.buildDrawingCache(true);
fbitmap = Bitmap.createBitmap(draglout.getDrawingCache());
storeImage(fbitmap);
draglout.setDrawingCacheEnabled(false);
startActivity(localIntent1);
}
});
@SuppressWarnings("deprecation")
BitmapDrawable localBitmapDrawable = new BitmapDrawable(HomeActivity.thumbnail);
frame.setImageDrawable(localBitmapDrawable);
}
public static File pictureFile;
public static Uri shareImageURI;
public static String shareImageFilePath = "";
private void storeImage(Bitmap image) {
pictureFile = getOutputMediaFile();
if (pictureFile == null) {
Log.e("===",
"Error creating media file, check storage permissions: ");// e.getMessage());
return;
}
try {
FileOutputStream fos = new FileOutputStream(pictureFile);
image.compress(Bitmap.CompressFormat.JPEG, 90, fos);
fos.flush();
fos.close();
Toast.makeText(getApplicationContext(), "Image Saved Successfully.", Toast.LENGTH_SHORT).show();
} catch (FileNotFoundException e) {
Log.e("===", "File not found: " + e.getMessage());
Toast.makeText(getApplicationContext(), "Image not saved", Toast.LENGTH_SHORT).show();
} catch (IOException e) {
Log.e("===", "Error accessing file: " + e.getMessage());
Toast.makeText(getApplicationContext(), "Image not saved", Toast.LENGTH_SHORT).show();
}
boolean flag = pictureFile.exists();
Uri uri = null;
if (flag) {
uri = Uri.fromFile(pictureFile);
shareImageURI = uri;
}
shareImageFilePath = getRealPathFromURI(uri);
Log.e("===", "shareImageURI " + shareImageURI);
}
/**
* Create a File for saving an image or video
*/
private File getOutputMediaFile() {
// using Environment.getExternalStorageState() before doing this.
// File mediaStorageDir = new File(Environment.getExternalStorageDirectory()
// + "/Android/data/"
// + getApplicationContext().getPackageName()
// + "/Files" + Global.AppFolder);
File root = new File(Environment.getExternalStorageDirectory().getAbsolutePath(), "/" + Global.AppFolder);
// Create the storage directory if it does not exist
if (!root.exists()) {
if (!root.mkdirs()) {
return null;
}
}
// Create a media file name
String timeStamp = new SimpleDateFormat("ddMMyyyy_HHmm").format(new Date());
File mediaFile;
String mImageName = "MI_" + timeStamp + ".jpg";
mediaFile = new File(root.getAbsolutePath(), mImageName);
return mediaFile;
}
private String getRealPathFromURI(Uri uri) {
Cursor cursor = getContentResolver().query(uri, null, null, null, null);
if (cursor == null) {
return uri.getPath();
} else {
cursor.moveToFirst();
String s = cursor.getString(cursor.getColumnIndex("_data"));
cursor.close();
return s;
}
}
public void gatedata(Intent paramIntent) {
addStickerView((Integer) paramIntent.getExtras().get("wall_id"));
}
protected void onActivityResult(int paramInt1, int paramInt2, Intent paramIntent) {
if ((paramInt1 == 1) && (paramInt2 == -1)) {
index = paramIntent.getIntExtra("index1", 0);
if (index == 1)
gatedata(paramIntent);
if (index == 2)
gatedata(paramIntent);
if (index == 3)
gatedata(paramIntent);
if (index == 4)
gatedata(paramIntent);
if (index == 5)
gatedata(paramIntent);
if (index == 6)
gatedata(paramIntent);
if (index == 7)
gatedata(paramIntent);
if (index == 8)
gatedata(paramIntent);
if (index == 9)
gatedata(paramIntent);
if (index == 10)
gatedata(paramIntent);
if (index == 11)
gatedata(paramIntent);
if (index == 12)
gatedata(paramIntent);
if (index == 13)
gatedata(paramIntent);
if (index == 14)
gatedata(paramIntent);
if (index == 15)
gatedata(paramIntent);
if (index == 16)
gatedata(paramIntent);
}
super.onActivityResult(paramInt1, paramInt2, paramIntent);
}
public void onBackPressed() {
finish();
}
private void addStickerView(int id) {
final bmpStickerView bmpstickerView = new bmpStickerView(this);
bmpstickerView.setImageResource(id);
bmpstickerView.setOperationListener(new bmpStickerView.OperationListener() {
@Override
public void onDeleteClick() {
ccmViews.remove(bmpstickerView);
ccmContentRootView.removeView(bmpstickerView);
}
@Override
public void onEdit(bmpStickerView ccstickerView) {
ccmCurrentView.setInEdit(false);
ccmCurrentView = ccstickerView;
ccmCurrentView.setInEdit(true);
}
@Override
public void onTop(bmpStickerView ccstickerView) {
int position = ccmViews.indexOf(ccstickerView);
if (position == ccmViews.size() - 1) {
return;
}
bmpStickerView stickerTemp = (bmpStickerView) ccmViews.remove(position);
ccmViews.add(ccmViews.size(), stickerTemp);
}
});
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT);
ccmContentRootView.addView(bmpstickerView, lp);
ccmViews.add(bmpstickerView);
setCurrentEdit(bmpstickerView);
}
private void setCurrentEdit(bmpStickerView ccstickerView) {
if (ccmCurrentView != null) {
ccmCurrentView.setInEdit(false);
}
ccmCurrentView = ccstickerView;
ccstickerView.setInEdit(true);
}
@Override
protected void onResume() {
super.onResume();
tv_appName.setVisibility(View.GONE);
}
}
Recommended editorial content
With your consent, external content is loaded here.
By clicking on the button above, you agree that external content may be displayed to you. Personal data may be transmitted to third-party providers in the process. You can find more information about this in our Privacy Policy.