Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么我要上传大小为1.5mb的图片呢';s说上传时出错,但实际上图片上传成功了吗?_Java_Android_Image_File Upload_Android Imageview - Fatal编程技术网

Java 为什么我要上传大小为1.5mb的图片呢';s说上传时出错,但实际上图片上传成功了吗?

Java 为什么我要上传大小为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

为什么当我试图上传大小为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 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();
}