【发布时间】:2016-11-23 12:05:08
【问题描述】:
我知道如何从图库中pickUpImage。但是相同的代码在我的其他应用程序中工作但在我的新应用程序中不起作用。
public class RegisterActivity extends AppCompatActivity{
Button upload_proof_button;
Bitmap bitmaps;
private static final int PICK_IMAGE = 100;
ImageView filename;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
filename = (ImageView) findViewById(R.id.filename_textveiw);
upload_proof_button = (Button)findViewById(R.id.upload_proof_button);
upload_proof_button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent gallery = new Intent(Intent.ACTION_PICK,
android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI);
startActivityForResult(gallery, PICK_IMAGE);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK && requestCode == PICK_IMAGE) {
Uri imageUri = data.getData();
try {
bitmaps = MediaStore.Images.Media.getBitmap(this.getContentResolver(), imageUri);
if(bitmaps == null){
filename.setImageBitmap(bitmaps);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
我在manifest.xml 文件中写入权限。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
错误日志:
07-20 06:16:10.401 12940-12940/com.example.softeng.jogifinal D/dalvikvm:GC_FOR_ALLOC释放287K,13%释放3182K/3640K,暂停2ms, 总计 2 毫秒 07-20 06:16:10.411 12940-12940/com.example.softeng.jogifinal I/dalvikvm: 找不到方法 android.content.res.Resources.getDrawable,引用自方法 android.support.v7.widget.ResourcesWrapper.getDrawable 07-20 06:16:10.411 12940-12940/com.example.softeng.jogifinal W/dalvikvm: VFY:无法解析虚拟方法 442: Landroid/content/res/Resources;.getDrawable (ILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; 07-20 06:16:10.411 12940-12940/com.example.softeng.jogifinal D/dalvikvm: VFY: 在 0x0002 07-20 06:16:10.411 处替换操作码 0x6e 12940-12940/com.example.softeng.jogifinal I/dalvikvm:找不到 方法 android.content.res.Resources.getDrawableForDensity,引用 从方法 android.support.v7.widget.ResourcesWrapper.getDrawableForDensity 07-20 06:16:10.411 12940-12940/com.example.softeng.jogifinal W/dalvikvm: VFY:无法解析虚拟方法 444: Landroid/content/res/Resources;.getDrawableForDensity (IILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable; 07-20 06:16:10.411 12940-12940/com.example.softeng.jogifinal D/dalvikvm: VFY: 在 0x0002 07-20 06:16:10.411 处替换操作码 0x6e 12940-12940/com.example.softeng.jogifinal E/dalvikvm:找不到 类'android.graphics.drawable.RippleDrawable',引用自 方法 android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering 07-20 06:16:10.411 12940-12940/com.example.softeng.jogifinal W/dalvikvm: VFY: 无法解析 instanceof 152 (Landroid/graphics/drawable/RippleDrawable;) 在 Landroid/support/v7/widget/AppCompatImageHelper; 07-20 06:16:10.411 12940-12940/com.example.softeng.jogifinal D/dalvikvm:VFY:替换 操作码 0x20 在 0x000c 07-20 06:16:10.721 12940-12940/com.example.softeng.jogifinal D/OpenGLRenderer:启用 调试模式 0 07-20 06:16:14.441 12940-12940/com.example.softeng.jogifinal I/dalvikvm:找不到 方法 android.content.Context.getColorStateList,引用自 方法 android.support.v7.content.res.AppCompatResources.getColorStateList 07-20 06:16:14.441 12940-12940/com.example.softeng.jogifinal W/dalvikvm: VFY: 无法解析虚拟方法 287: Landroid/content/Context;.getColorStateList (一)Landroid/content/res/ColorStateList; 07-20 06:16:14.441 12940-12940/com.example.softeng.jogifinal D/dalvikvm:VFY:替换 操作码 0x6e 在 0x0006 07-20 06:16:15.731 12940-12940/com.example.softeng.jogifinal D/dalvikvm: GC_FOR_ALLOC freed 270K, 12% free 3281K/3724K, pause 3ms, total 3ms 07-20 06:16:15.741 12940-12940/com.example.softeng.jogifinal D/dalvikvm: GC_FOR_ALLOC 释放 97K,释放 14% 3337K/3880K,暂停 1ms,共 2ms 07-20 06:16:15.741 12940-12940/com.example.softeng.jogifinal I/dalvikvm-heap:将堆(碎片情况)增加到 5.106MB 以获得 1764372 字节 分配 07-20 06:16:15.751 12940-12948/com.example.softeng.jogifinal D/dalvikvm: GC_FOR_ALLOC freed
我做了什么:
- 尝试
clean该项目。 - 试试
Invalidate and caches。 - 重新启动 Andriod Studio 3 次。但不行..
感谢任何帮助..
【问题讨论】:
-
当它不工作时,你能检查一下日志中是否有任何东西吗?
-
@KunalK 这个
GC_FOR_ALLOC freed 286K, 13% free 3281K/3740K, paused 2ms, total 2ms有影响吗?? -
不应该有一些警告或错误信息。
-
@KunalK 不,我的 logcat 没有显示任何错误。
-
READ_EXTERNAL_STORAGE ??我说不是 WRITE_EXTERNAL_STORAGE
标签: android android-intent bitmap gallery image-gallery