android 学习中遇到的知识点(杂)

2023-10-26

1. 用xml 合成图片

ic_launcher.xml 作用:将两个图片组合成一个图片,一个背景图,一个icon

<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
    <background android:drawable="@mipmap/ic_launcher_background"/>
    <foreground android:drawable="@mipmap/ic_launcher_foreground"/>
</adaptive-icon>

------生成了

 

2. Android中的app忽略电池优化

集成环信SDK时,进入页面,老是会弹出一个“要忽略电池优化吗?”的提示框,如果要去掉,把下列代码删除即可,代码如下:

        if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
            String packageName = getPackageName();
            PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
            if (!pm.isIgnoringBatteryOptimizations(packageName)) {
                try {
                    //some device doesn't has activity to handle this intent
                    //so add try catch
                    Intent intent = new Intent();
                    intent.setAction(android.provider.Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS);
                    intent.setData(Uri.parse("package:" + packageName));
                    startActivity(intent);
                } catch (Exception e) {
                }
            }
        }

这个功能在manifest文件中配置了权限:

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

3. android9.0新特性:

1)启动前台服务

Android在8.0限制了后台服务这些,启动后台服务需要设置通知栏,使服务变成前台服务。但是在9.0上,就会出现Permission Denial: startForeground requires android.permission.FOREGROUND_SERVICE

解决办法是在AndroidManifest中添加

    <!--android 9.0上使用前台服务,需要添加权限-->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />

之后启动service的时候也需要做处理,否则会抛异常java.lang.IllegalStateException: Not allowed to start service Intent

      if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
            context.startForegroundService(intent);
        } else {
            context.startService(intent);
        }

(2)Android 9.0强制使用https

Android 9.0强制使用https,会阻塞http请求,如果app使用的第三方sdk有http,将全部被阻塞。
出现UnknownServiceException: CLEARTEXT communication to localhost not permitted by network security policy或者IOException java.io.IOException: Cleartext HTTP traffic to * not permitted

解决方法:

AndroidManifest文件的application设置android:usesCleartextTraffic="true"

参考文献:Android App兼容8.0和9.0

 

4. 拨打电话:

跳转到拨号界面:

    public void callPhone(String phoneNum) {
        Intent intent = new Intent(Intent.ACTION_DIAL);
        Uri data = Uri.parse("tel:" + phoneNum);
        intent.setData(data);
        getContext().startActivity(intent);
    }

直接拨打电话:

public void callAction(String telPhone) {
    Intent intent = new Intent(Intent.ACTION_CALL);
    Uri data = Uri.parse("tel:" + telPhone);
    intent.setData(data);
    getContext().startActivity(intent);
}

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

android 学习中遇到的知识点(杂) 的相关文章

  • 【毕业设计】SVM 分类器和深度学习的方法对多种无人机型号进行分类识别【程序+论文】

    利用 SVM 分类器和深度学习的方法对多种无人机型号进行分类识别 但是对于同种型 号无人机不同个体识别率不高 射频指纹 Radio Frequency Distinct Native Attribute RFDNA 的提出为解决这一问题提供
  • RabbitMQ--交换机、队列、消息

    交换机 autoDelete 如果设置为true 唯一的一个交换机或者队列解绑 那么该队列将会被自动删除 交换机类型 faout 经过交换机的消息直接转到所有与这个交换器绑定的队列中 无视rounting key的存在 direct 经过交
  • 国密:SM2公私钥加签验签

    一 工具类 POM中增加hutool
  • jdbc mysql 重连_JDBC实现Mysql自动重连机制的方法详解

    JDBC是一个用于连接和访问各种数据库的应用编程接口 它可以提供Java程序和各种数据库之间的连接服务 以下是成都seo技术频道编辑带来的实现Mysql自动重连机制的JDBC方法的详细说明 日志 使用连接器 J连接属性 自动连接 真 来避免
  • 我的Docker部署笔记

    Centos7下安装Docker 1 root账户登录 查看内核版本 root localhost uname a Linux localhost localdomain 3 10 0 1160 el7 x86 64 1 SMP Mon O
  • var与let的区别【一看就懂的知识】

    今天偶尔翻看了一本书 JavaScript编程精解 在函数这一章节中难免会看到 作用域 这个字眼 之前对于作用域的概念本就不是很敏感 也就匆匆略过了 反过来看时 才明白这是一个比较重要的点 下面借作用域这一概念深入了解一下本文的重点 var
  • 5.QT5中的connect的实现

    在QT4中 解析信号槽是通过将信号槽的名字转化为字符串 然后通过connect解析该字符串 得到信号函数的相对序号和 然后创建信号connectionlist 但是 所有的检查都在运行时 通过解析字符串进行 这意味着 如果信号槽的名称拼写错

随机推荐

  • springcloud之服务配置中心

    springcloud之服务配置中心 SpringCloud Config简介 Config Server基本使用 Config Client基本使用 Config整合Eureka Config配置搜索路径 SpringCloud Conf
  • 2021.11.7总结

    数据结构 将第三章栈与队列知识点看完了 栈是先进后出表 队列是先进先出表 然后发现了书上有很多题目 慕课上面也有很多题目 只是我自己没写而已 下周从第一章开始写题 然后洛谷很久没写题目了 下周 将数据结构书上和课程的题目写完 到第三章 洛谷
  • 开启OLED透明屏代理之路:高质量显示解决方案的商机

    随着科技的不断进步 OLED透明屏作为一种创新的显示技术 正逐渐在各个领域得到广泛应用 作为一名OLED透明屏代理商 你将有机会参与其中 共享这一蓬勃发展的市场 一 介绍OLED透明屏的概念和特点 1 1 什么是OLED透明屏 OLED透明
  • pandas_数据处理分析基本

    一 Pandas基础用法 20210405 fancy lee 1 pandas介绍 Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具 该工具是为了解决数据分析任务而创建的 panda
  • ESP-12F开发环境

    ESP 12F可以使用arduino IDE快速开发 1 首先安装arduino IDE 搜索直接下载即可 2 在文件 gt 首选项 gt 附加开发板管理器网址中添加ESP8266开发板 网址 http arduino esp8266 co
  • PHP curl 传输文件流

    PHP版本5 5以下时可直接使用 拼接要传输的文件的绝对路径即可 params file str replace ABSOLUTE PATH str PHP版本5 5以上时 需要使用curl file create函数 创建一个 CURLF
  • Python中Pickle模块的dump()方法和load()方法

    Python中的Pickle模块实现了基本的数据序列与反序列化 一 dump 方法 pickle dump obj file protocol 注释 序列化对象 将对象obj保存到文件file中去 参数protocol是序列化模式 默认是0
  • docker 使用pytorch在gpu上训练模型

    docker 使用pytorch在gpu上训练模型 安装docker 下载docker image 建立启动容器进入docker虚拟空间 不一定能运行起来 安装docker sudo apt get y install docker io
  • 百度旋转验证码(8-24,js逆向)

    网址 aHR0cHM6Ly96aXl1YW4uYmFpZHUuY29tL2xpbmtzdWJtaXQvdXJs 一 抓包分析 刷新网页 先看第一个包 提交参数是ak和时间戳 ak是定值 返回的参数中 as和tk后面都会用到 然后点击提交链接
  • Android AnimationDrawable动画与APP启动引导页面

    Android AnimationDrawable动画与APP启动 加载引导页面 画面 AnimationDrawable是Android的Frame动画 可以简单的认为此AnimationDrawable能够将一系列资源图片加载成 电影
  • 大数据分析引擎之presto简介

    大数据分析引擎之presto简介 简介 presto是一个大数据分析引擎 不属于hadoop体系 他是基于内存的 他的集群模式是主从式的 他可以与任何的大数据存储引擎做集成 集成的时候使用它的Connectors集成 从这里我们可以他可以和
  • SpringBoot集成mybatis-plus生成实体类

    1 pom xml添加依赖 2 配置mybatis plus 在application yml中添加 配置数据库连接 3 在com dtest02 demo system config下添加MyBatisPlusConfig java 4
  • 踩坑:nacos利用startup.cmd -m standalone启动错误

    1 报错信息 PS D SpringCloud nacos nacos bin gt startup cmd m standalone startup cmd 无法将 startup cmd 项识别为 cmdlet 函数 脚本文件或可运行程
  • 线性代数 --- 最小二乘在直线拟合上的应用与Gram-Schmidt正交化(上)

    最小二乘在直线拟合上的应用 在前一篇最小二乘的文章中 线性代数 投影与最小二乘 下 多元方程组的最小二乘解与向量在多维子空间上的投影 松下J27的博客 CSDN博客多变量方程组的最小二乘 向量到多维子空间上的投影 https blog cs
  • 如何找数组中唯一重复的数?

    如何找数组中唯一重复的数 题目 方法一 不使用辅助空间的方法 思路 1 异或 同0异1 2 一组数连续异或 相当于消除重复的数 所以可以把1到1000这1000个数异或以后 和数组中的1001个元素异或 这样结果就是重复的元素 例 数组为
  • 热门面试题

    Transactional失效场景 没有将使用该注解的类交给Spring管理 也就是该对象不是bean对象 Transactional 应用在非 public 修饰的方法上 同一个类中方法之间的调用 导致 Transactional 失效
  • L - Sticky Situation

    L Sticky Situationhttps vjudge csgrandeur cn problem Kattis stickysituation 题意 给定一个 n 和 n 个数 看存不存在三个数可以构成三角形 include
  • hive中的EXPLODE和LATERAL VIEW

    行转列操作 0 函数说明 EXPLODE col 将 hive 一列中复杂的 array 或者 map 结构拆分成多行 LATERAL VIEW 用法 LATERAL VIEW udtf expression tableAlias AS c
  • 关于Rust

    Rust 文章目录 Rust 开发环境搭建 在线模式 离线模式 引入自定义第三方库 通用编程概念 Hello 注释 印屏 Display 变量 变量可变性 不可变变量与常量 变量冻结 延迟绑定 变量隐藏 数据类型 基本数据类型 类型别名 简
  • android 学习中遇到的知识点(杂)

    1 用xml 合成图片 ic launcher xml 作用 将两个图片组合成一个图片 一个背景图 一个icon