So within my app, i have the ability to allow the user to take a pic, see a thumbnail within the app and once the form is submitted, its uploaded to the server.
But something ive noticed lately is that (since im storing the image taken in the users gallery within a folder specific to the app) if you view the pic outside the app in the actually folder, it looks oriented correctly, if i take it portrait its portrait, if i take the pic landscape, its stored in landscape. Also when the user is presented the thumbnail, it also shows correct, but for some reason when the image is uploaded to the server, it no longer has the correct orientation. Im using ftp to upload the image with this code: try { int reply; String reply2; ftpClient.connect("ftp.site.com"); ftpClient.login("site","pass"); ftpClient.changeWorkingDirectory("/imgs/"); ftpClient.setFileType(FTP.BINARY_FILE_TYPE); BufferedInputStream buffIn = null; buffIn = new BufferedInputStream(new FileInputStream(file)); ftpClient.enterLocalPassiveMode(); ftpClient.storeFile(destinFolder,buffIn); buffIn.close(); reply = ftpClient.getReplyCode(); if(!FTPReply.isPositiveCompletion(reply)) { ftpClient.disconnect(); } ftpClient.logout(); } I even changed my logic to this and still nothing, the image is always uploaded in landscape. Even though the thumbnail and stored image on the phone is portrait. Found at this link: http://stackoverflow.com/questions/24629584/image-orientation-changes-while-uploading-image-to-server int rotate = 0; try { getContentResolver().notifyChange(imageUri, null); File imageFile = new File(al_image_paths.get(i)); ExifInterface exif = new ExifInterface( imageFile.getAbsolutePath()); int orientation = exif.getAttributeInt( ExifInterface.TAG_ORIENTATION, ExifInterface.ORIENTATION_NORMAL); switch (orientation) { case ExifInterface.ORIENTATION_ROTATE_270: rotate = 270; break; case ExifInterface.ORIENTATION_ROTATE_180: rotate = 180; break; case ExifInterface.ORIENTATION_ROTATE_90: rotate = 90; break; } Log.v(Common.TAG, "Exif orientation: " + orientation); Bitmap rotattedBitmap= BitmapFactory.decodeFile(al_image_paths.get(i)); Matrix matrix = new Matrix(); matrix.postRotate(rotate); return Bitmap.createBitmap(rotattedBitmap, 0, 0, rotattedBitmap.getWidth(), rotattedBitmap.getHeight(), matrix, true); } catch (Exception e) { e.printStackTrace(); } -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en --- You received this message because you are subscribed to the Google Groups "Android Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to android-developers+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.