0
由于现在智能手机将配备16个MP摄像头,并且图像尺寸将达到5 MB。将它们上传到移动数据上需要一些时间和更多的数据,导致App性能不佳。ODK收集图像质量
ODK收集是否有任何方式将图像问题调整为指定的尺寸和质量。
这将有助于提高应用程序的性能。
由于现在智能手机将配备16个MP摄像头,并且图像尺寸将达到5 MB。将它们上传到移动数据上需要一些时间和更多的数据,导致App性能不佳。ODK收集图像质量
ODK收集是否有任何方式将图像问题调整为指定的尺寸和质量。
这将有助于提高应用程序的性能。
ODK收集大小调整为屏幕尺寸,但你可以改变
int screenWidth = display.getWidth();
int screenHeight = display.getHeight();
至AA +固定最大分辨率...
// Only add the imageView if the user has taken a picture
if (mBinaryName != null) {
mImageView = new ImageView(getContext());
mImageView.setId(QuestionWidget.newUniqueId());
Display display =
((WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE))
.getDefaultDisplay();
int screenWidth = display.getWidth();
int screenHeight = display.getHeight();
File f = new File(mInstanceFolder + File.separator + mBinaryName);
if (f.exists()) {
Bitmap bmp = FileUtils.getBitmapScaledToDisplay(f, screenHeight, screenWidth);
if (bmp == null) {
mErrorTextView.setVisibility(View.VISIBLE);
}
mImageView.setImageBitmap(bmp);
} else {
mImageView.setImageBitmap(null);
}
mImageView.setPadding(10, 10, 10, 10);
mImageView.setAdjustViewBounds(true);
mImageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Collect.getInstance().getActivityLogger().logInstanceAction(this, "viewButton",
"click", mPrompt.getIndex());
Intent i = new Intent("android.intent.action.VIEW");
Uri uri = MediaUtils.getImageUriFromMediaProvider(mInstanceFolder + File.separator + mBinaryName);
if (uri != null) {
Log.i(t,"setting view path to: " + uri);
i.setDataAndType(uri, "image/*");
try {
getContext().startActivity(i);
} catch (ActivityNotFoundException e) {
Toast.makeText(getContext(),
getContext().getString(R.string.activity_not_found, "view image"),
Toast.LENGTH_SHORT).show();
}
}
}
});
如果您仍有兴趣这是一个功能,请考虑评论这个建议 - https://github.com/opendatakit/xforms-spec/issues/79 –