parent
4fc55f3eea
commit
930893176b
@ -0,0 +1,72 @@
|
|||||||
|
package ${domain}.base.activity;
|
||||||
|
|
||||||
|
import android.content.Intent;
|
||||||
|
import android.net.Uri;
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import ${domain}.base.Consant;
|
||||||
|
import ${domain}.base.util.StorageUtil;
|
||||||
|
import com.jph.takephoto.app.TakePhoto;
|
||||||
|
import com.jph.takephoto.compress.CompressConfig;
|
||||||
|
import com.jph.takephoto.model.TImage;
|
||||||
|
import com.jph.takephoto.model.TResult;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
|
||||||
|
public class TakePhotoActivity extends com.jph.takephoto.app.TakePhotoActivity {
|
||||||
|
|
||||||
|
public static final String POSITION_PARAM = "position_param";
|
||||||
|
public static final String POSITION_CAPTURE = "capture";
|
||||||
|
public static final String POSITION_GALLERY = "gallery";
|
||||||
|
public static final String POSITION_DOCUMENTS = "documents";
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
TakePhoto takePhoto = getTakePhoto();
|
||||||
|
configCompress(takePhoto);
|
||||||
|
Intent intent = getIntent();
|
||||||
|
String stringExtra = intent.getStringExtra(POSITION_PARAM);
|
||||||
|
if (POSITION_CAPTURE.equals(stringExtra)) {
|
||||||
|
takePhoto.onPickFromCapture(getImageCropUri());
|
||||||
|
} else if (POSITION_GALLERY.equals(stringExtra)) {
|
||||||
|
takePhoto.onPickFromGallery();
|
||||||
|
} else {
|
||||||
|
takePhoto.onPickFromDocuments();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//获得照片的输出保存Uri
|
||||||
|
private Uri getImageCropUri() {
|
||||||
|
File file = new File(StorageUtil.getOwnCacheDirectory(this, Consant.DIR_IMG), System.currentTimeMillis() + ".jpg");
|
||||||
|
if (!file.getParentFile().exists()) file.getParentFile().mkdirs();
|
||||||
|
return Uri.fromFile(file);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void configCompress(TakePhoto takePhoto) {//压缩配置
|
||||||
|
CompressConfig config = new CompressConfig.Builder().setMaxSize(512 * 1024)
|
||||||
|
.setMaxPixel(800)
|
||||||
|
.enableReserveRaw(false)//拍照压缩后是否显示原图
|
||||||
|
.create();
|
||||||
|
takePhoto.onEnableCompress(config, false);//是否显示进度条
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void takeSuccess(TResult result) {
|
||||||
|
TImage image = result.getImage();
|
||||||
|
Intent intent = new Intent();
|
||||||
|
intent.putExtra("path", image.getCompressPath() != null ? image.getCompressPath() : image.getOriginalPath());
|
||||||
|
setResult(RESULT_OK, intent);
|
||||||
|
finish();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void takeFail(TResult result, String msg) {
|
||||||
|
super.takeFail(result, msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void takeCancel() {
|
||||||
|
super.takeCancel();
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue