- 博客(18)
- 资源 (3)
- 收藏
- 关注
原创 GooglePlay发布应用:要求去掉调试打印
解决办法:1.首先把应用内所有的清单文件的debuggable改成false2.然后禁用所有的打印日志:不用自己在代码中加标志开关,优雅一点的方法就是在proguard-rules中添加assumenosideeffects字段,作废打印类 代码如下:......
2022-08-02 17:10:58
769
原创 GooglePlay发布应用: targetSdkVersion 30 的要求
BaseApplication.getContext().getExternalFilesDir(Environment.DIRECTORY_PICTURES);Environment.DIRECTORY_PICTURES子文件夹,用于区分各种类型文件,应该都能用不影响的;targetSdkVersion提示最低需要targetSdkVersion30。把想要搜索到的包名加到queries里面就ok了。就是这个方法,里面的pinfo直接就是空的。如题我是22年8月初提交aab的。...
2022-08-02 17:03:48
1821
原创 java线程相关知识
一段synchronized的代码被一个线程执行之前,他要先拿到执行这段代码的权限,在 java里边就是拿到某个同步对象的锁(一个对象只有一把锁);如果这个时候同步对象的锁被其他线程拿走了,他(这个线程)就只能等了(线程阻塞在锁池 等待队列中)。取到锁后,他就开始执行同步代码(被synchronized修饰的代码);线程执行完同步代码后马上就把锁还给同步对象,其他在锁池中 等待的某个线程就可以拿到锁执行同步代码了。这样就保证了同步代码在统一时刻只有一个线程在执行。众所周知,在Java多线程编程中,一..
2022-02-18 07:50:51
142
原创 java方法执行流程解析
Java程序运行时,必须经过编译和运行两个步骤。首先将后缀名为.java的源文件进行编译,最终生成后缀名为.class的字节码文件。然后Java虚拟机将编译好的字节码文件加载到内存(这个过程被称为类加载,是由加载器完成的),然后虚拟机针对加载到内存的java类进行解释执行,显示结果。Java的运行原理在Java中引入了虚拟机的概念,即在机器和编译程序之间加入了一层抽象的虚拟的机器。这台虚拟的机器在任何平台上都提供给编译程序一个的共同的接口。编译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解
2020-09-02 13:59:08
1063
原创 三次握手和四次挥手(大白话笔记)
每次看了些资料,可以理解,容易忘.网上的大堆详解就不贴了,做个大白话笔记;三次握手 : 1.A向B申请连接 2.B说我准备好了,看你的 3.A说我也准备好了,连接吧.四次挥手 : 1.A向B申请断开 2.B说知道了,可以断开的时候我会告诉你 ...
2019-06-17 15:12:36
2356
转载 URI和URL的区别 - 通俗易懂
这么说吧,对于这两个词的理解,我就举一个例子就行了。如果说世界上每一个人的名字是不可以重复的,那么一个名字就可以唯一标识一个人(当然身份证号也是这样的意思哈),但是你是找不到这个人的,只能是唯一标识。那么这就相当于是URI。而省份证上的地址加上姓名,就可以唯一标识你这个人并且还能找到你。这就相当于URL。URI是唯一标识,但是不一定能找到,不是定位资源,是标识资源,URL是唯一标识...
2019-06-12 10:23:49
1220
原创 总结笔记Http(2)
理解下面两句话: 术语TCP/IP代表传输控制协议/网际协议,指的是一系列协议。“IP”代表网际协议,TCP和UDP使用该协议从一个网络传送数据包到另一个网络。把IP想像成一种高速公路,它允许其它协议在上面行驶并找到到其它电脑的出口。TCP和UDP是高速公路上的“卡车”,它们携带的货物就是像HTTP,文件传输协议FTP这样的协议等。TCP和UDP是FTP,HTTP和S...
2019-05-30 11:16:45
114
原创 总结笔记Http(1)
HTTP 1. 建立在TCP上的无状态连接 2.客户端发请求,服务端响应客户端. 整个过程叫--- 事务 , 事务结束,服务端会添加一条日志HTTP请求 1.状态行:请求方式Method、资源路径URL、协议版本Version; 2.请求头: 访问的域名、用户代理、Cookie等信息等; 3.请求正文:HTTP请求的数据。HTTP...
2019-05-30 11:04:19
97
原创 Android Studio 通过wify连接手机调试
Android Studio调试手机应用,最常用的就是直接USB连接,打开调试模式,这就不说了.要说的是,有时候特殊情况,需要通过wify来连接手机调试,方法如下:手机通过USB线连接到电脑,然后Terminal 中输入 adb tcpip 5555 显示 restarting xxxxx 就是成功了然后拔掉USB,在Terminal 中 adb connect 手机ip:5555 ...
2019-05-06 10:48:37
253
原创 Android机顶盒adb调试及一直显示offline的处理
如题机顶盒我们一般采用adb来进行连接调试:1.机顶盒和电脑连接同一网段,一般我是两个都连接到同一个wify下.2.在studio Terminal 中输入 adb connect ip:port 就可以连接到机顶盒了以上是正常情况,有一种异常情况非常烦人:那就是在adb连接好机顶盒的情况下,直接关闭adb或者studio,或者直接关机顶盒,极高几率造成下次进行connect后,...
2019-05-06 10:22:03
5392
1
原创 android 手机屏幕相机预览拉伸变形的处理
项目需求使用相机预览做页面背景,简单实现后发现,机型屏幕长宽比例和本地相机预览的比例不一样,某些手机造成严重变形拉伸(特别是魅族和华为),现在把预览步骤和处理拉伸的步骤和代码贴一下:相机预览简单步骤:1.初始化 surfaceView 获取surfaceHolder2.打开camera3.设置camera的方向4.设置camera的帧数5.利用屏幕宽高和surfaceVie
2016-11-26 15:59:18
1385
原创 Android 简化顺序播放多个动画的工具类
如题:只是省去了我们为了顺序播放多个动画而写的代码,动画还是要自己写的,一个工具类:import android.view.View;import android.view.animation.Animation;import com.smart.mirrorer.listener.AbsAnimationListener;/** * Created by zhengfei on
2016-09-10 14:46:34
773
2
原创 RecyclerView IndexOutOfBoundsException: Inconsistency detected. Invalid item position
调用刷新后 上拉加载 出现的问题:RecyclerView 开始刷新后 去获取数据 然后 clear数据容器后再关闭刷新 会导致 RecyclerView内部数组越界问题 解决办法:把clear放到关闭刷新后面 也就是 接口回调onSuccess 里面 先关闭刷新 再clearover
2016-09-09 16:01:39
216
原创 android 相机预览 报错 app passed NULL surface
android 相机预览 报错 app passed NULL surface项目中用到相机预览作为背景,在主页嵌入SurfaceView做背景,做法如下:onCreate中初始化SurfaceView sfv;onResume中获取1.SurfaceHolder sfh; 2.camera设置并开始预览第一次启动都预览不了 报错 app passed NULL surface
2016-09-08 17:14:28
3025
原创 万能适配器BaseQuickAdapter中使用AutoLayout适配各分辨率屏幕
需求描述:AutoLayout和BaseQuickAdapter 不能兼用的情况AutoLayout说明:安卓屏幕适配 (hongyang大神说过这个)1.File-New-InportModle 导入 autolayout 2.File-ProjectStructure-选择需要依赖到的modle 3.顶部选项切换到Dependencies4.点左下角的+号,依赖选择Modl
2016-09-07 10:40:18
1492
原创 Android Dialog弹窗封装 一行弹窗
如题:import android.app.Activity;import android.app.Dialog;import android.content.Context;import android.view.LayoutInflater;import android.view.View;import com.smart.mirrorer.R;/** * Created
2016-09-07 09:45:09
502
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人