android - Downloaded images upload, but camera taken images won't -


i have issue photo upload app allows pick image device , upload server. have been following guide on how use android upload service library this. application works image downloaded, or did not originate phone's camera. whenever choose image camera folder or if take 1 , try go choose it, image file not show in uploads folder. hits database table, not image folder. when click on image hyperlink sent table column, says "object not found" having real trouble understanding why happening images particularly. can help?

here mainactivity code:

package com.example.stins.orbotcamera;  import android.manifest; import android.app.progressdialog; import android.content.context; import android.content.dialoginterface; import android.content.intent; import android.content.pm.packagemanager; import android.database.cursor; import android.graphics.bitmap; import android.graphics.color; import android.graphics.drawable.bitmapdrawable; import android.net.uri; import android.os.asynctask; import android.os.build; import android.os.environment; import android.provider.mediastore; import android.provider.settings; import android.provider.syncstatecontract; import android.support.design.widget.coordinatorlayout; import android.support.design.widget.floatingactionbutton; import android.support.design.widget.snackbar; import android.support.v4.app.activitycompat; import android.support.v4.content.contextcompat; import android.support.v4.content.fileprovider; import android.support.v7.app.alertdialog; import android.support.v7.app.appcompatactivity; import android.os.bundle; import android.support.v7.widget.toolbar; import android.util.base64; import android.util.log; import android.view.menu; import android.view.menuinflater; import android.view.menuitem; import android.view.view; import android.widget.edittext; import android.widget.imageview; import android.widget.textview; import android.widget.toast;  import net.gotev.uploadservice.multipartuploadrequest; import net.gotev.uploadservice.uploadnotificationconfig;  import java.io.bytearrayoutputstream; import java.io.file; import java.io.ioexception; import java.text.simpledateformat; import java.util.date; import java.util.hashmap; import java.util.uuid;  public class mainactivity extends appcompatactivity implements view.onclicklistener {      private floatingactionbutton fab;     private imageview imageview;     private uri file;     private gpstracker gps;     private edittext imagecomment;     private coordinatorlayout coordinatorlayout;     private textview imagelat, imagelong;     private string mlat, mlong;      public static final string upload_url = "http:///uploadexamples/upload.php";      private bitmap bitmap;        @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         setcontentview(r.layout.activity_main);          fab = (floatingactionbutton) findviewbyid(r.id.fab);         imageview = (imageview) findviewbyid(r.id.imageview);         imagecomment = (edittext) findviewbyid(r.id.imagecomment);         imagelat = (textview) findviewbyid(r.id.imagelat);         imagelong = (textview) findviewbyid(r.id.imagelong);          fab.setonclicklistener(this);          if (contextcompat.checkselfpermission(this, manifest.permission.camera) != packagemanager.permission_granted) {             fab.setenabled(false);             imagecomment.setenabled(false);             activitycompat.requestpermissions(this, new string[]{manifest.permission.camera, manifest.permission.write_external_storage,manifest.permission.read_external_storage, manifest.permission.access_fine_location, manifest.permission.access_coarse_location}, 0);         }       }       @override     public void onrequestpermissionsresult(int requestcode, string[] permissions, int[] grantresults) {         if (requestcode == 0) {             if (grantresults.length > 0 && grantresults[0] == packagemanager.permission_granted                     && grantresults[1] == packagemanager.permission_granted) {                 fab.setenabled(true);                 imagecomment.setenabled(true);             }              else{                 coordinatorlayout = (coordinatorlayout) findviewbyid(r.id.coordinatorlayout);                 final snackbar snackbar = snackbar                         .make(coordinatorlayout, "accept permissions use app", snackbar.length_indefinite);                 snackbar.setaction("ok", new view.onclicklistener() {                     @override                     public void onclick(view view) {                         intent = getbasecontext().getpackagemanager()                                 .getlaunchintentforpackage( getbasecontext().getpackagename() );                         i.addflags(intent.flag_activity_clear_top);                         startactivity(i);                     }                 });                  snackbar.setactiontextcolor(color.white);                  view sbview = snackbar.getview();                 textview textview = (textview) sbview.findviewbyid(android.support.design.r.id.snackbar_text);                 textview.settextcolor(color.gray);                   snackbar.show();         }           }      }        public void uploadimage() {         //getting name image         string name = imagecomment.gettext().tostring().trim();          //getting actual path of image         string path = getpath(file);           //uploading code         try {             string uploadid = uuid.randomuuid().tostring();              //creating multi part request             new multipartuploadrequest(this, uploadid, upload_url)                     .addfiletoupload(path, "image") //adding file                     .addparameter("name", name) //adding text parameter request                     .addparameter("latitude", mlat)                     .addparameter("longitude", mlong)                     .setnotificationconfig(new uploadnotificationconfig())                     .setmaxretries(2)                     .startupload(); //starting upload          } catch (exception exc) {             toast.maketext(this, exc.getmessage(), toast.length_short).show();         }     }        public string getpath(uri uri) {         cursor cursor = getcontentresolver().query(uri, null, null, null, null);         if (cursor != null) {             cursor.movetofirst();         }         string document_id = null;         if (cursor != null) {             document_id = cursor.getstring(0);         }         if (document_id != null) {             document_id = document_id.substring(document_id.lastindexof(":") + 1);         }         if (cursor != null) {             cursor.close();         }          cursor = getcontentresolver().query(                 android.provider.mediastore.images.media.external_content_uri,                 null, mediastore.images.media._id + " = ? ", new string[]{document_id}, null);         if (cursor != null) {             cursor.movetofirst();         }         string path = null;         if (cursor != null) {             path = cursor.getstring(cursor.getcolumnindex(mediastore.images.media.data));         }         if (cursor != null) {             cursor.close();         }          return path;     }              @override     protected void onactivityresult(int requestcode, int resultcode, intent data) {          if (requestcode == 0 && resultcode == result_ok && data != null && data.getdata() != null) {             file = data.getdata();             try {                 bitmap = mediastore.images.media.getbitmap(getcontentresolver(), file);                 imageview.setimagebitmap(bitmap);                 imagecomment.setvisibility(view.visible);              } catch (ioexception e) {                 e.printstacktrace();             }         }            if (requestcode == 0) {             gps = new gpstracker(mainactivity.this);              if (resultcode == result_ok) {                 if (gps.cangetlocation()) {                     double latitude = gps.getlatitude();                     double longitude = gps.getlongitude();                       mlat = double.tostring(latitude);                      mlong = double.tostring(longitude);                      imagelat.settext(mlat);                     imagelong.settext(mlong);                      // \n new line                     //toast.maketext(getapplicationcontext(), "your location - \nlat: " + latitude + "\nlong: " + longitude, toast.length_long).show();                     coordinatorlayout = (coordinatorlayout) findviewbyid(r.id.coordinatorlayout);                      final snackbar snackbar = snackbar                             .make(coordinatorlayout, "current location recorded", snackbar.length_long);                      snackbar.setactiontextcolor(color.white);                      view sbview = snackbar.getview();                     textview textview = (textview) sbview.findviewbyid(android.support.design.r.id.snackbar_text);                     textview.setcompounddrawableswithintrinsicbounds(r.drawable.ic_location_on_white_24dp,0,0,0);                     textview.settextcolor(color.white);                       snackbar.show();                 } else {                     // can't location.                     // gps or network not enabled.                     // ask user enable gps/network in settings.                  }              } else if (resultcode == result_canceled) {                 // user cancelled image capture                 coordinatorlayout = (coordinatorlayout) findviewbyid(r.id.coordinatorlayout);                 final snackbar snackbar = snackbar                         .make(coordinatorlayout,"picture cancelled", snackbar.length_short);                  view sbview = snackbar.getview();                 textview textview = (textview) sbview.findviewbyid(android.support.design.r.id.snackbar_text);                 textview.setcompounddrawableswithintrinsicbounds(r.drawable.ic_cancel_white_24dp,0,0,0);                 textview.settextcolor(color.white);                  snackbar.show();             } else {                 // failed capture image                 coordinatorlayout = (coordinatorlayout) findviewbyid(r.id.coordinatorlayout);                 final snackbar snackbar = snackbar                         .make(coordinatorlayout,"error taking picture", snackbar.length_short);                  view sbview = snackbar.getview();                 textview textview = (textview) sbview.findviewbyid(android.support.design.r.id.snackbar_text);                 textview.setcompounddrawableswithintrinsicbounds(r.drawable.ic_error_outline_white_24dp,0,0,0);                 textview.settextcolor(color.white);                  snackbar.show();             }         }     }      @override     public boolean oncreateoptionsmenu(menu menu) {         menuinflater inflater = getmenuinflater();         inflater.inflate(r.menu.menu_main, menu);         return true;     }          @override     public boolean onoptionsitemselected(menuitem item) {         int id = item.getitemid();         switch (item.getitemid()) {             case r.id.action_send:                 if(imageview.getdrawable()==null){                     coordinatorlayout = (coordinatorlayout) findviewbyid(r.id.coordinatorlayout);                     final snackbar snackbar = snackbar                             .make(coordinatorlayout,"sorry, you'll need image that!", snackbar.length_short);                      view sbview = snackbar.getview();                     textview textview = (textview) sbview.findviewbyid(android.support.design.r.id.snackbar_text);                     textview.setcompounddrawableswithintrinsicbounds(r.drawable.ic_error_outline_white_24dp,0,0,0);                     textview.settextcolor(color.white);                      snackbar.show();                 }                 else {                     uploadimage();                 }                 return true;           }         return super.onoptionsitemselected(item);     }      @override     public void onbackpressed() {          new alertdialog.builder(this, r.style.theme_appcompat_dialog_alert)                 .settitle("exit")                 .setmessage("are sure want close orbot camera?")                 .setpositivebutton("yes", new dialoginterface.onclicklistener()                 {                     @override                     public void onclick(dialoginterface dialog, int which) {                         finish();                     }                  })                 .setnegativebutton("no", null)                 .show();       }      @override     public void onclick(view v) {          intent i;         if(v.getid()==r.id.fab)         {             intent intent = new intent();             intent.settype("image/*");             intent.setaction(intent.action_get_content);             startactivityforresult(intent.createchooser(intent, "select picture"), 0);          }      } } 


Comments

Popular posts from this blog

networking - Vagrant-provisioned VirtualBox VM is not reachable from Ubuntu host -

c# - ASP.NET Core - There is already an object named 'AspNetRoles' in the database -

ruby on rails - ArgumentError: Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true -