
Android
yonbor605
好好学习,天天向上!
展开
-
Android 危险权限大全
前言:Android 中有上百种权限,现在将所有的权限归为两类:一类是普通权限一类的危险权限普通权限是指那些不会威胁到用户安全和隐私的权限,这部分权限系统会自动帮我们进行授权不需要手动操作。危险权限则表示那些可能会触及到用户安全隐私或者对设备安全造成影响的权限,如获取手机联系人信息等权限,申请者部分权限必须有用户收到点击授权才可以,否则程序无法使用相应的功能。下...原创 2018-07-18 13:57:12 · 2336 阅读 · 0 评论 -
Android 跳转到华为钱包、小米钱包、Samsung Pay、OPPO钱包、魅族钱包主页面
最近做的一个金融项目中有一个跳转到手机自带的钱包APP的首页的需求,咋一看这还不简单,但是网上一搜资料特别少,连华为钱包、小米钱包、SamsungPay这些应用的包名都找不到,就更别说这些应用的主页面的全路径了。最终经过真机连通Android Studio 查看日志才获取这些关键信息,以下是实现的核心代码,请诸位参阅!package com.yongbo.wallet;import an...原创 2019-10-11 14:51:16 · 2592 阅读 · 0 评论 -
Android常用的算法总结
一、二分查找法注意:必须有前提,数组中的元素要有序。public static int halfSeach_2(int[] arr, int key) { int min, max, mid; min = 0; max = arr.length - 1; mid = (max + min) >> 1; //(ma...原创 2018-11-20 09:45:50 · 2185 阅读 · 1 评论 -
Android root检测方法总结
一 为什么要进行root检测?出于安全原因,我们的应用程序不建议在已经root的设备上运行,所以需要检测是否设备已经root,以提示用户若继续使用会存在风险。二 root了会有什么风险?在Linux操作系统中,root的权限是最高的,也被称为超级权限的拥有者。 在系统中,每个文件、目录和进程,都归属于某一个用户,没有用户许可其它普通用户是无法操作的,但对root除外。root用户...原创 2018-11-05 15:10:02 · 8502 阅读 · 1 评论 -
Android 内存泄露小结
java内存的分配策略Java 程序运行时的内存分配策略有三种,分别是静态分配,栈式分配,和堆式分配,对应的,三种存储策略使用的内存空间主要分别是静态存储区(也称方法区)、栈区和堆区。静态存储区(方法区):主要存放静态数据、全局 static 数据和常量。这块内存在程序编译时就已经分配好,并且在程序整个运行期间都存在。 栈区 :当方法被执行时,方法体内的局部变量(其中包括基础数据类型、对...原创 2018-10-23 10:28:27 · 216 阅读 · 0 评论 -
Android P 版本中支持全面屏检测的api
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { WindowInsets windowInsets = decorView.getRootWindowInsets(); if (windowInsets != null) { DisplayCutout displayCutout = windowI...原创 2018-10-22 14:31:48 · 1171 阅读 · 0 评论 -
Android 9 Pie 兼容性常见问题及注意事项
应用不兼容的常见原因:1、使用了系统的 ClassLoader 加载 org.apache.http.* 的库Android M 就已经开始移除对 Apache HTTP client 的支持。而 Android P 的系统 ClassLoader 已经不支持加载 org.apache.http.包 (抛出 NoClassDefFoundError),应用必须用自定义的 ClassLoad...原创 2018-09-11 09:47:48 · 811 阅读 · 0 评论 -
Android 基于Retrofit2.0的支持多主机地址的网络请求类的封装
一、首先在Module级别的build.gradle文件中添加依赖implementation 'com.squareup.retrofit2:retrofit:2.3.0'implementation 'com.squareup.retrofit2:adapter-rxjava2:2.2.0'implementation 'com.squareup.retrofit2:converte...原创 2018-09-12 10:50:45 · 401 阅读 · 0 评论 -
Android Studio 中 Gradle 依赖的统一管理
一 为什么我们要对 Gradle 统一管理?在工作中我们所接触的项目一般都是一个Project中至少会存在两个甚至多个Module。试想,如果每个Module又同时拥有相同的依赖,比如v4、v7,当进行版本升级的时候岂不是每个Module的build.gradle文件都要改动,这样不仅麻烦不利于维护而且容易出错,所以,将依赖进行统一管理,这对于一个 Project 下拥有多个 Module 的...原创 2018-09-02 20:29:57 · 308 阅读 · 0 评论 -
Android中使用logger打印完整的okhttp网络请求和响应的所有相关信息(请求行、请求头、请求体、响应行、响应行、响应头、响应体)
如果你的项目中的网络请求库是Retrofit的话,他的底层封装的是OkHttp,通常调试网络接口时都会将网络请求和响应相关数据通过日志的形式打印出来。OkHttp也提供了一个网络拦截器okhttp-logging-interceptor,通过它能拦截okhttp网络请求和响应所有相关信息(请求行、请求头、请求体、响应行、响应行、响应头、响应体)。使用okhttp网络日志拦截器需添加以下依赖...原创 2018-08-31 14:49:56 · 7006 阅读 · 0 评论 -
Android 基于Retrofit2.0的支持多主机地址的网络请求类的封装
一、首先在Module级别的build.gradle文件中添加依赖implementation 'com.squareup.retrofit2:retrofit:2.3.0'implementation 'com.squareup.retrofit2:adapter-rxjava2:2.2.0'implementation 'com.squareup.retrofit2:converter...原创 2018-08-21 14:01:48 · 1284 阅读 · 5 评论 -
Android 权限大全
1.android.permission.WRITE_USER_DICTIONARY 允许应用程序向用户词典中写入新词2.android.permission.WRITE_SYNC_SETTINGS 写入Google在线同步设置3.android.permission.WRITE_SOCIAL_STREAM 读...原创 2018-07-18 14:23:03 · 371 阅读 · 0 评论 -
Android 获取手机屏幕的真实宽高和可用宽高
不知道你们遇没遇到过h5页面加载全屏网络图片屏幕下面有白边的bug,之所以会这样是因为H5获取的屏幕宽高值是可用宽高值(不包括底部虚拟导航栏),而不是真实的屏幕的宽高(包括底部虚拟导航栏)。话不多说,直接上代码,就是干!!!import android.content.Context;import android.graphics.Point;import android.os.Buil...原创 2019-10-11 15:27:22 · 2404 阅读 · 1 评论