android-从用户';s画廊

android-从用户';s画廊,android,Android,这是我的密码。我在显示和保存从用户的图库中挑选的图片时遇到问题,而当我从相机中选择图片时,它对我来说效果很好。 以下是如何向用户推荐其图库- if (v.getId() == R.id.btnAddDucuments) { AlertDialog.Builder alertDialog = new AlertDialog.Builder(this); alertDialog.setMessage("to add documents"); aler

这是我的密码。我在显示和保存从用户的图库中挑选的图片时遇到问题,而当我从相机中选择图片时,它对我来说效果很好。 以下是如何向用户推荐其图库-

if (v.getId() == R.id.btnAddDucuments) {
        AlertDialog.Builder alertDialog = new AlertDialog.Builder(this);

        alertDialog.setMessage("to add documents");
        alertDialog.setPositiveButton("from camera", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
                // user choose to take a picture

                Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
                startActivityForResult(cameraIntent, CAM_REQUEST);

            }
        });

        alertDialog.setNegativeButton("from gallery", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
                // user choose to pick a photo from gallery

                Intent galleryIntent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
                startActivityForResult(new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI), GET_FROM_GALLERY);                }
        });


        alertDialog.show();
下面是图片应该如何保存的。我需要它作为一个字符串(这样我就可以进一步使用它)和这个avtivity中的ImageView(名为imgTheDocument)

当我运行此代码时,按下想要的图片后,活动停止。我不明白问题出在哪里。我以前使用过这个代码,它工作得很好

我将感谢任何帮助!!谢谢:)

我的清单权限:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

选择图像的意图(这是无错误的,适用于所有android版本!)


张贴stacktrace。为什么要保存从“图库”中选择的图片?那你的设备上已经有这张照片了。????您没有保存从库中拾取的图片。哪种代码可以这样做?
StringImgDocument=BitMapToString(位图)该代码发生了什么?
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Intent intent;
        if (Build.VERSION.SDK_INT < 19){
            intent = new Intent();
            intent.setAction(Intent.ACTION_GET_CONTENT);
            intent.setType("image/*");
            startActivityForResult(intent, GET_FROM_GALLERY);
        } else {
            intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
            intent.addCategory(Intent.CATEGORY_OPENABLE);
            intent.setType("image/*");
            startActivityForResult(intent, GET_FROM_GALLERY);
        } 
 @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {

        if(requestCode==GET_FROM_GALLERY && resultCode == Activity.RESULT_OK) {

                //you can both use the selectedImageUri or yourSelectedImagePath for working the Image you picked,send it somewhere or store it in database or etc..
                Uri selectedImageUri = data.getData();

                String yourSelectedImagePath = selectedImage.tostring;
                //I just use the Uri to display the selected image in an imageview
                yourImageView.setImageUri(selectedImage);

        }