马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
媒介
近来线上反馈,部门vivo手机更换头像时调用体系相册生存图片失败,经本人测试,确实有题目。
经修复后,贴出这块的代码供小同伴们参考使用。
功能
更换头像选择图片:
- 调用体系相机照相,调用体系图片裁剪并生存。
- 调用体系相册选择照片,调用体系图片裁剪并生存。
此功能须要动态申请 相机和读写外部存储的权限,此处省略了,请自办法态申请添加。
- String[] permissions=new String[]{
-
- Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE};
复制代码 1、结构文件activity_picture.xml:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_
- android:layout_
- android:orientation="vertical">
- <Button
- android:id="@+id/takePictureFromCamera"
- android:layout_
- android:layout_
- android:text="拍照" />
- <Button
- android:id="@+id/takePictureFromLib"
- android:layout_
- android:layout_
- android:text="从相册选取" />
- <ImageView
- android:id="@+id/img"
- android:layout_
- android:layout_
- android:layout_marginTop="10dp"/>
- </LinearLayout>
复制代码 2、PictureActivity:
- public class PictureActivity extends AppCompatActivity {
-
-
- public class Const {
-
-
- public static final int PHOTO_GRAPH = 1;// 拍照
- public static final int PHOTO_ZOOM = 2; // 相册
- public static final int PHOTO_RESOULT = 3;// 结果
- public static final String IMAGE_UNSPECIFIED = "image/*";
- }
- public String authority;
- private ImageView imageView;
- @Override
- protected void onCreate(@Nullable Bundle savedInstanceState) {
-
-
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_picture);
- authority = getApplicationContext().getPackageName() + ".fileprovider";
- imageView = findViewById(R.id.img);
-
复制代码 |