0
私はSDカードを持っていないので。 組み込みのギャラリーから画像を選択して、画像をサーバーにアップロードしたいと思います。画像をアップロードinbuiltギャラリー
私はそこから選択できるように、誰でも内蔵ギャラリーに画像を配置する方法についてこれを手伝ってもらえますか?
ヘルプが表示されます。
私はSDカードを持っていないので。 組み込みのギャラリーから画像を選択して、画像をサーバーにアップロードしたいと思います。画像をアップロードinbuiltギャラリー
私はそこから選択できるように、誰でも内蔵ギャラリーに画像を配置する方法についてこれを手伝ってもらえますか?
ヘルプが表示されます。
次のコードからあなたの作り付けのギャラリーに行くことができます:今、onActivityResultは、このようにする必要があり
Button btnBrowse = (Button)findViewById(R.id.btn_browse);
btnBrowse.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,
"Select Picture"), SELECT_PICTURE);
}
});
。あなたが画像をアップロードすることができます。これにより
public byte[] convertToBytes(String selectedImagePath)
{
try
{
FileInputStream fs = new FileInputStream(selectedImagePath);
Bitmap bitmap = BitmapFactory.decodeStream(fs);
ByteArrayOutputStream bOutput = new ByteArrayOutputStream();
bitmap.compress(CompressFormat.JPEG,1, bOutput);
byte[] dataImage = bOutput.toByteArray();
return dataImage;
}
catch(NullPointerException ex)
{
ex.printStackTrace();
return null;
}
catch (FileNotFoundException e)
{
e.printStackTrace();
return null;
}
}
public String getPath(Uri uri) {
String[] projection = { MediaStore.Images.Media.DATA };
Cursor cursor = managedQuery(uri, projection, null, null, null);
int column_index = cursor
.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
:
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
if (requestCode == SELECT_PICTURE) {
Uri selectedImageUri = data.getData();
selectedImagePath = getPath(selectedImageUri);
EditText imageBrowse = (EditText)findViewById(R.id.thumb_url);
imageBrowse.setText(selectedImagePath);
byte[] strBytes = convertToBytes(selectedImagePath);
imageBytes = strBytes;
}
}
}
ConvertToBytes方法は次のようにする必要があります。