记录点android升级内容

server/2025/1/18 7:09:20/
  1. Cleartext HTTP traffic to yun.tjwzkj.com not permitted

android中不仅要由网络权限<uses-permission android:name="android.permission.INTERNET"/>,而且需要在Application中增加android:usesCleartextTraffic="true"

 还可以创建xml文件夹里面有个network_security_config.xml

<?xml version="1.0" encoding="utf-8"?>

<network-security-config>

    <base-config cleartextTrafficPermitted="true" />

</network-security-config>

在AndroidManifest.xml中

 <application

        android:allowBackup="true"

        android:icon="@mipmap/ic_wzkj"

        android:label="@string/app_name"

        android:roundIcon="@mipmap/ic_launcher_round"

        android:supportsRtl="true"

        android:theme="@style/AppTheme.NoActionBar"

        android:networkSecurityConfig="@xml/network_security_config"

        android:usesCleartextTraffic="true">

  1. android自动更新

2.1)遇到2个问题

'android.content.res.XmlResourceParser android.content.pm.ProviderInfo.loadXmlMetaData(android.content.pm.PackageManager, java.lang.String)' on a null object reference

这个需要在xml目录下建立一个filepaths.xml

<?xml version="1.0" encoding="utf-8"?>

<paths>

    <external-path

        name="files_root"

        path="Android/data/com.aaa.web/" />

    <external-path

        name="external_storage_root"

        path="." />

</paths>

2.2)需要在AndroidManifest.xml中加入

<provider

            android:name="android.support.v4.content.FileProvider"

            android:authorities="${applicationId}.fileprovider"

            android:exported="false"

            android:grantUriPermissions="true">

            <meta-data

                android:name="android.support.FILE_PROVIDER_PATHS"

                android:resource="@xml/filepaths"

                />

        </provider>

2.3)需要在AndroidManifest.xml加入一下权限

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

    <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"

        tools:ignore="ScopedStorage" />

    <uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />

    <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />

    <uses-permission

        android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"

        tools:ignore="ProtectedPermissions" />


http://www.ppmy.cn/server/159294.html

相关文章

时序数据库TDengine 3.3.5.0 发布:高并发支持与增量备份功能引领新升级

近日&#xff0c;TDengine 3.3.5.0 版本正式发布&#xff0c;带来了多项重磅更新与优化&#xff0c;从功能拓展到性能提升&#xff0c;再到用户体验进行了全面改进。本次更新围绕用户核心需求展开&#xff0c;涵盖了开发工具、数据管理、安全性、可视化等多个层面&#xff0c;为…

JTAG调试器的使用方法

概述: JTAG(联合测试行动组)是基于IEEE 1149.1标准的专用硬件接口。该接口旨在将复杂的芯片和设备连接到标准测试和调试硬件。目前JTAG主要用于: Output control of microcircuits; Testing of printed circuit boards; Flashing of microchips with memory; Chip softwa…

什么情况下适合使用静态路由?什么情况下适合使用动态路由?_什么时候用静态路由什么时候用动态

2 静态路由 静态路由是由网络管理员根据网络拓扑&#xff0c;使用命令在路由器上配置的路由&#xff0c;这些静态路由信息指导报文发送&#xff0c;静态路由方式也无需路由器进行计算&#xff0c;但它完全依赖于网络管理员的手动配置。 补充一下&#xff0c;默认路由是一种特…

【Rust自学】13.2. 闭包 Pt.2:闭包的类型推断和标注

13.2.0. 写在正文之前 Rust语言在设计过程中收到了很多语言的启发&#xff0c;而函数式编程对Rust产生了非常显著的影响。函数式编程通常包括通过将函数作为值传递给参数、从其他函数返回它们、将它们分配给变量以供以后执行等等。 在本章中&#xff0c;我们会讨论 Rust 的一…

paimon使用腾讯云cosn作为仓库存储的使用方式

背景 paimon是flink推出的高性能流式数据湖平台&#xff0c;我们在业务应用中选型了paimon作为数据湖的落地框架。对象存储&#xff08;Cloud Object Storage&#xff0c;COS&#xff09;是腾讯云提供的一种存储海量文件的分布式存储服务&#xff0c;用户可通过网络随时存储和查…

【Kotlin】上手学习之控制流程篇

二、控制流程 2.1 条件与循环 2.1.1 if 表达式 在 Kotlin 中&#xff0c;if 是一个表达式&#xff1a;它会返回一个值。 因此就不需要三元运算符&#xff08;条件 ? 然后 : 否则&#xff09;&#xff0c;因为普通的 if 就能胜任这个角色。 fun main() {val a 2val b 3va…

【Vue】let、const、var的区别、适用场景

let、const、var&#xff0c;有哪些区别&#xff0c;适用场景 var 特点&#xff1a; var 是 JavaScript 中最传统的变量声明方式。具有函数作用域&#xff0c;即在函数内声明的 var 变量&#xff0c;在整个函数内都可以访问。变量提升&#xff1a;使用 var 声明的变量会被提升…

【Linux探索学习】第二十六弹——进程通信:深入理解Linux中的进程通信

Linux探索学习&#xff1a; https://blog.csdn.net/2301_80220607/category_12805278.html?spm1001.2014.3001.5482 前言&#xff1a; 在Linux操作系统中&#xff0c;进程通信&#xff08;IPC&#xff09;是操作系统的一项核心功能&#xff0c;用于在不同进程之间交换数据或…