1.加权限
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/>
<uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"/>
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
2. 使用最新的SDK版本:使用最新的API Level(即29)进行编译。
compileSdkVersion 29
targetSdkVersion 29
这两个版本需要修改到28或以上
3.老项目需要加网络安全配置
1..老项目需要加网络安全配置
android:networkSecurityConfig="@xml/network_security_config"
xml中创建network_security_config.xml
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true" />
</network-security-config>
4.避免出现http联网问题
在AndroidManifest.xml的application节点下加入
<uses-library android:name="org.apache.http.legacy" android:required="false"/>
5. 获取文件夹路径
String savePAth = Environment.getExternalStorageDirectory() + “/DownFile/”;
上面方法要换成下面的 否则获取会失败
String savePAth = getExternalCacheDir()+"/DownFile/";
6. 选择相册图片时出现权限问题,这么解决
问题:Unable to decode stream: java.io.FileNotFoundException:
/storage/emulated/0/DCIM/Camera/IMG_20200328_235057.jpg: open failed:
EACCES (Permission denied)
解决方案:加入标蓝色部分代码即可
android:requestLegacyExternalStorage =“true”