FitAndroid7 项目使用教程
FitAndroid7一行代码完成Android 7 FileProvider适配~项目地址:https://gitcode.com/gh_mirrors/fi/FitAndroid7
项目介绍
FitAndroid7 是一个开源项目,旨在简化 Android 7.0 及以上版本的 FileProvider 适配。通过一行代码即可完成 FileProvider 的配置,大大减少了开发者在适配新版本时的复杂性。该项目由 hongyangAndroid 维护,遵循 Apache-2.0 许可证。
项目快速启动
1. 克隆项目
首先,克隆 FitAndroid7 项目到本地:
git clone https://github.com/hongyangAndroid/FitAndroid7.git
2. 添加依赖
在您的 Android 项目中,添加以下依赖:
implementation 'com.github.hongyangAndroid:FitAndroid7:版本号'
3. 配置 FileProvider
在您的 AndroidManifest.xml
文件中,添加以下配置:
<provider
android:name="com.zhy.base.fileprovider.FileProvider7"
android:authorities="${applicationId}.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
4. 使用 FileProvider
在您的代码中,使用 FileProvider7
来设置 Intent 的数据和类型:
File file = new File(Environment.getExternalStorageDirectory(), "testandroid7-debug.apk");
Intent intent = new Intent(Intent.ACTION_VIEW);
FileProvider7.setIntentDataAndType(this, intent, "application/vnd.android.package-archive", file, true);
startActivity(intent);
应用案例和最佳实践
示例一:拍照并显示图片
public void takePhoto(View view) {
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
File photoFile = createImageFile();
if (photoFile != null) {
Uri photoURI = FileProvider7.getUriForFile(this, getPackageName() + ".fileprovider", photoFile);
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI);
startActivityForResult(takePictureIntent, REQUEST_CODE_TAKE_PHOTO);
}
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK && requestCode == REQUEST_CODE_TAKE_PHOTO) {
mIvPhoto.setImageBitmap(BitmapFactory.decodeFile(mCurrentPhotoPath));
}
}
示例二:安装 APK
public void installApk(View view) {
File file = new File(Environment.getExternalStorageDirectory(), "testandroid7-debug.apk");
Intent intent = new Intent(Intent.ACTION_VIEW);
FileProvider7.setIntentDataAndType(this, intent, "application/vnd.android.package-archive", file, true);
startActivity(intent);
}
典型生态项目
FitAndroid7 项目主要用于简化 Android 7.0 及以上版本的 FileProvider 适配。它适用于需要处理文件共享和权限管理的各种应用场景,如文件管理器、媒体播放器、文档编辑器等。通过使用 FitAndroid7,开发者可以更高效地处理文件操作,提升应用的兼容性和用户体验。
FitAndroid7一行代码完成Android 7 FileProvider适配~项目地址:https://gitcode.com/gh_mirrors/fi/FitAndroid7