我正在尝试一个月来制作简单的相机捕捉没有成功.我正在开发的这个应用程序几个月前工作很好,但因为我更新Android到版本7该应用程序停止正常工作.我想点击一个按钮,在捕获后激活相机(内置非api)以在imageview中显示图像(高质量)并将图像保存到图片文件夹.之后将图像发送到服务器.在我的应用程序的现有版本中,我捕获图像,在imageview中显示保存的图像并通过json发送到服务器.现在活动结果为空,imageview为空:-(请帮助
旧代码很有效
public void onClick(View v) {
switch (v.getId()) {
case R.id.cancel_btn:
finish();
break;
case R.id.camera_btn:
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
cameraIntent.putExtra(MediaStore.EXTRA_SCREEN_ORIENTATION, ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
startActivityForResult(cameraIntent, CAMERA_REQUEST);
break;
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == CAMERA_REQUEST && resultCode == Activity.RESULT_OK) {
Uri u = data.getData();
Log.d("u", String.valueOf(u));
theImageUriStr = String.valueOf(u);
Log.d("theImageUriStr", String.valueOf(theImageUriStr));
mImageView = (ImageView) findViewById(R.id.mImageView);
ALBUM_ART_URI = Uri.parse(String.valueOf(theImageUriStr));
Picasso.with(AddNewDish.this).load(ALBUM_ART_URI).into(mImageView);
}
else{
Log.d("mmmm", String.valueOf(resultCode));
}
}
Run Code Online (Sandbox Code Playgroud)
我从Log.du和theImageUriStr获得的结果为null
2017年
Android中唯一逼真的摄像头方法是革命性的库
它改变了Android开发中的一切 -
没有其他现实的方法可行.
谷歌(实际上是他们的日本办事处)终于自己写了一些让Android摄像头变成实际软件的东西.那是:https://github.com/google/cameraview.这是一个神奇的图书馆,摄像头难度从10到5.
flurgle库https://github.com/gogopop/CameraKit-Android是第一个最终解决所有问题并使相机像普通软件一样工作的大门.困难现在是1.
这样做可以在您的应用中添加实时相机
<com.flurgle.camerakit.CameraView
android:id="@+id/camera"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:adjustViewBounds="true"/>
Run Code Online (Sandbox Code Playgroud)
这样做是为了拍照
cameraView.setCameraListener(new CameraListener() {
@Override
public void onPictureTaken(byte[] picture) {
super.onPictureTaken(picture);
Bitmap result = BitmapFactory.decodeByteArray(picture, 0, picture.length);
save the image...
});
Run Code Online (Sandbox Code Playgroud)
全都完了.而已.
| 归档时间: |
|
| 查看次数: |
3108 次 |
| 最近记录: |