Java 为什么我要上传大小为1.5mb的图片呢';s说上传时出错,但实际上图片上传成功了吗?
为什么当我试图上传大小为1.5MB的图片时,上传时会说错误,但实际上图片上传成功了?如果我试图上传大小为100KB的图像,则表示图像上传成功 WC_Activity.javaJava 为什么我要上传大小为1.5mb的图片呢';s说上传时出错,但实际上图片上传成功了吗?,java,android,image,file-upload,android-imageview,Java,Android,Image,File Upload,Android Imageview,为什么当我试图上传大小为1.5MB的图片时,上传时会说错误,但实际上图片上传成功了?如果我试图上传大小为100KB的图像,则表示图像上传成功 WC_Activity.java package com.emergency.e_place; import android.content.Intent; import android.graphics.Bitmap; import android.graphics.Matrix; import android.net.Uri; import andr
package com.emergency.e_place;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.Matrix;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Toast;
import com.kosalgeek.android.photoutil.CameraPhoto;
import com.kosalgeek.android.photoutil.GalleryPhoto;
import com.kosalgeek.android.photoutil.ImageBase64;
import com.kosalgeek.android.photoutil.ImageLoader;
import com.kosalgeek.genasync12.AsyncResponse;
import com.kosalgeek.genasync12.EachExceptionsHandler;
import com.kosalgeek.genasync12.PostResponseAsyncTask;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.ProtocolException;
import java.util.HashMap;
/**
* Created by Eggy on 5/3/2016.
*/
public class WC_Activity extends AppCompatActivity {
final String TAGS = "DEBUG";
String Latitude;
String Longitude;
private final String TAG = this.getClass().getName();
ImageView ivCamera, ivGallery, ivUpload, ivImage;
CameraPhoto cameraPhoto;
GalleryPhoto galleryPhoto;
final int CAMERA_REQUEST = 13323;
final int GALLERY_REQUEST = 22131;
String selectedPhoto;
EditText etIpAddress;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_wc);
Toolbar toolbar=(Toolbar)findViewById(R.id.toolbarWC);
setSupportActionBar(toolbar);
//ambil lokasi dari MainActivity
Intent myIntent = getIntent(); // gets the previously created intent
Latitude = myIntent.getStringExtra("Latitude"); // will return "FirstKeyValue"
Longitude= myIntent.getStringExtra("Longitude"); // will return "SecondKeyValue"
Log.d(TAGS, "onLocationChanged: " + Longitude);
etIpAddress = (EditText)findViewById(R.id.etIpAddress);
cameraPhoto = new CameraPhoto(getApplicationContext());
galleryPhoto = new GalleryPhoto(getApplicationContext());
ivImage = (ImageView)findViewById(R.id.ivImage);
ivCamera = (ImageView)findViewById(R.id.ivCamera);
ivGallery = (ImageView)findViewById(R.id.ivGallery);
ivUpload = (ImageView)findViewById(R.id.ivUpload);
ivCamera.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
startActivityForResult(cameraPhoto.takePhotoIntent(), CAMERA_REQUEST);
cameraPhoto.addToGallery();
} catch (IOException e) {
Toast.makeText(getApplicationContext(),
"Something Wrong while taking photos", Toast.LENGTH_SHORT).show();
}
}
});
ivGallery.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivityForResult(galleryPhoto.openGalleryIntent(), GALLERY_REQUEST);
}
});
ivUpload.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(selectedPhoto == null || selectedPhoto.equals("")){
Toast.makeText(getApplicationContext(), "No Image Selected.", Toast.LENGTH_SHORT).show();
return;
}
try {
Bitmap bitmap = ImageLoader.init().from(selectedPhoto).requestSize(1024, 1024).getBitmap();
String encodedImage = ImageBase64.encode(bitmap);
Log.d(TAG, encodedImage);
HashMap<String, String> postData = new HashMap<String, String>();
postData.put("image", encodedImage);
PostResponseAsyncTask task = new PostResponseAsyncTask(WC_Activity.this, postData, new AsyncResponse() {
@Override
public void processFinish(String s) {
Log.d(TAG, s);
if(s.contains("uploaded_success")){
Toast.makeText(getApplicationContext(), "Image Uploaded Successfully.",
Toast.LENGTH_SHORT).show();
}
else{
Toast.makeText(getApplicationContext(), "Error while uploading.",
Toast.LENGTH_SHORT).show();
}
}
});
String ip = etIpAddress.getText().toString();
task.execute("http://" +ip + "/AndroidUpload/upload.php");
task.setEachExceptionsHandler(new EachExceptionsHandler() {
@Override
public void handleIOException(IOException e) {
Toast.makeText(getApplicationContext(), "Cannot Connect to Server.",
Toast.LENGTH_SHORT).show();
}
@Override
public void handleMalformedURLException(MalformedURLException e) {
Toast.makeText(getApplicationContext(), "URL Error.",
Toast.LENGTH_SHORT).show();
}
@Override
public void handleProtocolException(ProtocolException e) {
Toast.makeText(getApplicationContext(), "Protocol Error.",
Toast.LENGTH_SHORT).show();
}
@Override
public void handleUnsupportedEncodingException(UnsupportedEncodingException e) {
Toast.makeText(getApplicationContext(), "Encoding Error.",
Toast.LENGTH_SHORT).show();
}
});
} catch (FileNotFoundException e) {
Toast.makeText(getApplicationContext(),
"Something Wrong while encoding photos", Toast.LENGTH_SHORT).show();
}
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(resultCode == RESULT_OK){
if(requestCode == CAMERA_REQUEST){
String photoPath = cameraPhoto.getPhotoPath();
selectedPhoto = photoPath;
Bitmap bitmap = null;
try {
bitmap = ImageLoader.init().from(photoPath).requestSize(512, 512).getBitmap();
ivImage.setImageBitmap(getRotatedBitmap(bitmap, 90));
} catch (FileNotFoundException e) {
Toast.makeText(getApplicationContext(),
"Something Wrong while loading photos", Toast.LENGTH_SHORT).show();
}
}
else if(requestCode == GALLERY_REQUEST){
Uri uri = data.getData();
galleryPhoto.setPhotoUri(uri);
String photoPath = galleryPhoto.getPath();
selectedPhoto = photoPath;
try {
Bitmap bitmap = ImageLoader.init().from(photoPath).requestSize(512, 512).getBitmap();
ivImage.setImageBitmap(bitmap);
} catch (FileNotFoundException e) {
Toast.makeText(getApplicationContext(),
"Something Wrong while choosing photos", Toast.LENGTH_SHORT).show();
}
}
}
}
private Bitmap getRotatedBitmap(Bitmap source, float angle){
Matrix matrix = new Matrix();
matrix.postRotate(angle);
Bitmap bitmap1 = Bitmap.createBitmap(source,
0, 0, source.getWidth(), source.getHeight(), matrix, true);
return bitmap1;
}
}
package com.emergency.e_place;
导入android.content.Intent;
导入android.graphics.Bitmap;
导入android.graphics.Matrix;
导入android.net.Uri;
导入android.os.Bundle;
导入android.support.v7.app.AppActivity;
导入android.support.v7.widget.Toolbar;
导入android.util.Log;
导入android.view.view;
导入android.widget.EditText;
导入android.widget.ImageView;
导入android.widget.Toast;
导入com.kosalgeek.android.photoutil.CameraPhoto;
导入com.kosalgeek.android.photoutil.GalleryPhoto;
导入com.kosalgeek.android.photoutil.ImageBase64;
导入com.kosalgeek.android.photoutil.ImageLoader;
导入com.kosalgeek.genasync12.AsyncResponse;
导入com.kosalgeek.genasync12.eachexceptionHandler;
导入com.kosalgeek.genasync12.PostResponseAsyncTask;
导入java.io.FileNotFoundException;
导入java.io.IOException;
导入java.io.UnsupportedEncodingException;
导入java.net.MalformedURLException;
导入java.net.ProtocolException;
导入java.util.HashMap;
/**
*由Eggy于2016年5月3日创建。
*/
公共类WC_活动扩展了AppCompative活动{
最终字符串标记=“调试”;
弦纬度;
弦经度;
私有最终字符串标记=this.getClass().getName();
ImageView ivCamera、ivGallery、ivUpload、ivImage;
摄影照片;
画廊照片画廊照片;
最终int CAMERA_请求=13323;
最终请求=22131;
字符串选择照片;
编辑文本;
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_wc);
Toolbar Toolbar=(Toolbar)findViewById(R.id.toolbarWC);
设置支持操作栏(工具栏);
//ambil lokasi dari主要活动
Intent myIntent=getIntent();//获取先前创建的意图
Latitude=myIntent.getStringExtra(“Latitude”);//将返回“FirstKeyValue”
经度=myIntent.getStringExtra(“经度”);//将返回“SecondKeyValue”
Log.d(标记“onLocationChanged:+经度);
etIpAddress=(EditText)findViewById(R.id.etIpAddress);
cameraPhoto=新的cameraPhoto(getApplicationContext());
galleryPhoto=新的galleryPhoto(getApplicationContext());
ivImage=(ImageView)findViewById(R.id.ivImage);
ivCamera=(ImageView)findViewById(R.id.ivCamera);
ivGallery=(ImageView)findViewById(R.id.ivGallery);
ivUpload=(ImageView)findViewById(R.id.ivUpload);
ivCamera.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
试一试{
startActivityForResult(cameraPhoto.takePhotoIntent(),CAMERA_请求);
cameraPhoto.addToGallery();
}捕获(IOE异常){
Toast.makeText(getApplicationContext(),
“拍照时出错”,Toast.LENGTH_SHORT.show();
}
}
});
ivGallery.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
startActivityForResult(galleryPhoto.OpenGalleryContent(),GALLERY_请求);
}
});
ivUpload.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
if(selectedPhoto==null | | selectedPhoto.equals(“”){
Toast.makeText(getApplicationContext(),“未选择图像”,Toast.LENGTH\u SHORT.show();
返回;
}
试一试{
位图Bitmap=ImageLoader.init().from(selectedPhoto).requestSize(10241024).getBitmap();
字符串encodedImage=ImageBase64.encode(位图);
Log.d(标签、编码图像);
HashMap postData=新HashMap();
postData.put(“图像”,编码图像);
PostResponseAsyncTask任务=新的PostResponseAsyncTask(WC_Activity.this,postData,new AsyncResponse()){
@凌驾
公共void processFinish(字符串s){
日志d(标签s);
如果(s.contains(“上传成功”)){
Toast.makeText(getApplicationContext(),“图像已成功上载。”,
吐司。长度(短)。show();
}
否则{
Toast.makeText(getApplicationContext(),“上载时出错。”,
吐司。长度(短)。show();
}
}
});
字符串ip=etIpAddress.getText().toString();
task.execute(“http://“+ip+”/AndroidUpload/upload.php”);
task.seteAchexceptionHandler(新的eAchexceptionHandler(){
@凌驾
公共无效句柄异常(IOE异常){
Toast.makeText(getApplicationContext(),“无法连接到服务器。”,
吐司。长度(短)。show();
}
@凌驾
公共无效handleMalformedURLException(MalformedURLException e){
Toast.makeText(getApplicationContext(),“URL错误”,
吐司。长度(短)。show();
}