提交 84d515f2 编写于 作者: B Blankj

see 04/21 log

上级 7b4c8354
......@@ -654,6 +654,11 @@ showCustomLong : 显示长时自定义吐司
cancel : 取消吐司显示
```
* ### Uri 相关 -> [UriUtils.java][uri.java]
```
getUriForFile: 获取文件 URI
```
* ### 压缩相关 -> [ZipUtils.java][zip.java] -> [Test][zip.test]
```
zipFiles : 批量压缩文件
......@@ -771,5 +776,7 @@ getComments : 获取压缩文件中的注释链表
[toast.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/util/ToastUtils.java
[toast.demo]: https://github.com/Blankj/AndroidUtilCode/blob/master/app/src/main/java/com/blankj/androidutilcode/feature/core/toast/ToastActivity.java
[uri.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/util/UriUtils.java
[zip.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/util/ZipUtils.java
[zip.test]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/test/java/com/blankj/utilcode/util/ZipUtilsTest.java
......@@ -654,6 +654,11 @@ showCustomLong
cancel
```
* ### About Uri -> [UriUtils.java][uri.java]
```
getUriForFile
```
* ### About Zip -> [ZipUtils.java][zip.java] -> [Test][zip.test]
```
zipFiles
......@@ -771,5 +776,7 @@ getComments
[toast.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/util/ToastUtils.java
[toast.demo]: https://github.com/Blankj/AndroidUtilCode/blob/master/app/src/main/java/com/blankj/androidutilcode/feature/core/toast/ToastActivity.java
[uri.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/util/UriUtils.java
[zip.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/util/ZipUtils.java
[zip.test]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/test/java/com/blankj/utilcode/util/ZipUtilsTest.java
......@@ -3,11 +3,9 @@ package com.blankj.utilcode.util;
import android.content.ComponentName;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.provider.MediaStore;
import android.support.annotation.RequiresPermission;
import android.support.v4.content.FileProvider;
import java.io.File;
......@@ -76,15 +74,9 @@ public final class IntentUtils {
public static Intent getInstallAppIntent(final File file, final boolean isNewTask) {
if (file == null) return null;
Intent intent = new Intent(Intent.ACTION_VIEW);
Uri data;
Uri data = UriUtils.getUriForFile(file);
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
String type = "application/vnd.android.package-archive";
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
data = Uri.fromFile(file);
} else {
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
String authority = Utils.getApp().getPackageName() + ".utilcode.provider";
data = FileProvider.getUriForFile(Utils.getApp(), authority, file);
}
intent.setDataAndType(data, type);
return getIntent(intent, isNewTask);
}
......@@ -154,14 +146,8 @@ public final class IntentUtils {
final boolean isNewTask) {
if (file == null) return null;
Intent intent = new Intent(Intent.ACTION_VIEW);
Uri data;
Uri data = UriUtils.getUriForFile(file);
String type = "application/vnd.android.package-archive";
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
data = Uri.fromFile(file);
} else {
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
data = FileProvider.getUriForFile(Utils.getApp(), authority, file);
}
intent.setDataAndType(data, type);
return getIntent(intent, isNewTask);
}
......
package com.blankj.utilcode.util;
import android.net.Uri;
import android.os.Build;
import android.support.v4.content.FileProvider;
import java.io.File;
/**
* <pre>
* author: Blankj
* blog : http://blankj.com
* time : 2018/04/20
* desc : uri 相关
* </pre>
*/
public final class UriUtils {
private UriUtils() {
throw new UnsupportedOperationException("u can't instantiate me...");
}
public static Uri getUriForFile(final File file) {
if (file == null) return null;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
String authority = Utils.getApp().getPackageName() + ".utilcode.provider";
return FileProvider.getUriForFile(Utils.getApp(), authority, file);
} else {
return Uri.fromFile(file);
}
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册