- 博客(485)
- 资源 (21)
- 论坛 (18)
- 收藏
- 关注

原创 博客资源导航
这是博客目录,方便查找。分类目录非技术文章开发文档开发工具RxJavaApp 常用功能实现物联网开发四大组件Java 基础Html5JVMSVNGit 手册Android 异常处理解决方案AutoCompleteTextViewBannerButtonCheckbox](https://blog.csdn.net/jdfkldjlkjdl/category_6...
2020-04-24 20:54:04
328
原创 Java 反射小结
反射则是一开始并不知道我要初始化的类对象是什么,自然也无法使用 new 关键字来创建对象了。这时候,我们使用 JDK 提供的反射 API 进行反射调用。
2020-12-09 20:26:42
21
原创 Android 调试工具 stetho 的使用
概述关于stetho,最开始是同事推荐的,主要用来通过Chrome的inspect命令来查看数据库数据的。配置好stetho环境后,在浏览器中输入chrome://inspect,找到需要调试的对象,点击inspect即可调试参考发现这篇文章写得很详细,所以就引过来了,感谢原作者的分享。 https://segmentfault.com/a/1190000012075067...
2020-10-30 10:45:08
2090
3
原创 Android 面试遇到的问题整理
备注:以下问题的答案均是个人整理的,如有不同意见,欢迎斧正。1.自定义Handler时如何避免内存泄漏答案:一般非静态内部类持有外部类的引用的情况下,造成外部类在使用完成后不能被系统回收内存,从而造成内存泄漏。为了避免这个问题,我们可以自定义的Handler声明为静态内部类形式,然后通过弱引用的方式,让Handler持有外部类的引用,从而可避免内存泄漏问题。以下是代码实现public class ...
2020-10-30 09:44:30
85
原创 JavaWeb 项目出现红色感叹号解决方案
在某些情况下,我们的工程会出现红色感叹号,包括安卓工程和web工程,一般比较普遍的错误是引用的jar包错误,下面给出解决方案:错误现场:web项目android项目【问题原因】:工程中classpath中指向的包路径错误【解决办法】:右键项目名称 BuildPath ---> Configure Build Paht...中,然后上面有几个选项卡找到
2020-10-30 09:34:39
2799
原创 Android 性能优化总结
性能优化实践(一)-安装包瘦身性能优化实践(二)-布局优化性能优化实践(三)-卡顿优化思考性能优化实践(四)-内存优化思考性能优化工具(九)-LeakCanary
2020-07-28 16:48:14
32
转载 如何让scrollview 始终显示最后一行
ScrollView 有一个方法scollTo(int, int)用来指定滚动条的位置。如果你尝试过,你会发现它是无效的。因为scollTo()在Scrolliew内的内容加载完成后才能执行。所以我们这样设置滚动条的位置:ScrollView mScrollView =(ScrollView)findViewById(R.id.svid);mScrollView.post(new Runnable() { public void run() { mScrollView
2020-07-20 11:25:53
210
原创 通用SQL基础
通用SQL基础DML数据操作语言:insert delete updateDDL数据定义语言:create alter drop truncateDCL数据控制语言:grant revoke --通常无需程序员 操作事物控制语句:commit rollback savepoint1. 五类完整性约束NOT NULL:非空约束,指定某列不能为空。UNIQUE:唯一约束,指定某列或者几列组合不能重复。PRIMARY KEY:主键约束,指定该列的值可以唯一标识该条记录。FOREIGN KEY:
2020-05-28 15:43:26
70
原创 2020 Android 面试总结 - 02
volatile 关键字Java语言提供了一种稍弱的同步机制,即volatile变量,用来确保将变量的更新操作通知到其他线程。当一个变量定义为 volatile 之后,将具备两种特性:1.保证此变量对所有的线程的可见性,这里的“可见性”,当一个线程修改了这个变量的值,volatile 保证了新值能立即同步到主内存,以及每次使用前立即从主内存刷新。但普通变量做不到这点,普通变量的值在线程间传递均需要通过主内存拷贝到 CPU 缓存中来完成。2.禁止指令重排序优化。有volatile修饰的变量,赋值后多执
2020-05-28 11:12:38
142
原创 Android 国际化之动态语言切换(兼容 Android 4.4 - Android 10)
背景由于项目原因,需要用到国际化这一部分的知识。并且在 App 中需要动态切换语言,所以花了点时间研究了下具体的实现。并在兼容问题上做了较多的思考,目前兼容了 Android 4.4 到 Android 10 平台。实现思路大致思路如下:我们通过页面上选择的国家语言标识(比如 zh 代表简体中文,en 代表英语),去拿到系统的 Locale 对象 locale;通过 context 拿到系统资源 Resources 对象 resources;通过 resources 拿到资源配置 Config
2020-05-22 15:11:43
623
原创 2020 Android 面试总结 - 01
字符串反转写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。例如:输入 abcd,输出:dcba字符串匹配问题对于字符串str,其中绝对不含有字符’.’和‘’。再给定字符串exp,其中可以含有’.’或’‘’,’’字符不能是exp的首字符,并且任意两个’‘字符不相邻。exp中的’.’代表任何一个字符,exp中的’’表示’‘的前一个字符可以有0个或者多个。请写一个函数,判断str是否能被exp匹配(注意:输入的数据不保证合法,但只含小写字母和‘.’和‘*’)。选择题Ser.
2020-05-20 16:41:11
110
原创 面试 02 - 链表相关面试题
LeetCode(Java版)19. 删除链表的倒数第N个节点解法1:不需要去遍历两次,一次即可,思路是,用两个指针p,q先指向头节点,让q指针走到第n个位置,然后两个指针同时往后走,走到q.next==null是说明p已经到达倒数第n个节点的前面的那个节点,此时删除下一个节点即可。注意:当删除头节点和只有一个元素的情况。/** * Definition for singly-linked list. * public class ListNode { * int val; *.
2020-05-12 16:27:50
94
原创 第 3 章 - 编写界面的最佳实践
本文初探 UI 设计,主要包含两个点。制作 Nine-Patch 图片制作精美的聊天界面效果制作 .9 图现在新版的 Android SDK 的 tools 下面已经去除了 draw9patch.bat ,转而在 AS 中集成了该功能。只需要选中图片,右键生成 .9 图,然后编辑即可。.9 图的各边规则:左号黑色条位置向右覆盖的区域表示图片纵向拉伸时,只拉伸该区域上号黑色条...
2020-05-07 14:41:02
75
原创 Android 在代码中设置 drawableLeft(Right/Top/Bottom)
在xml中设置android:drawableLeft="@drawable/xxxxx"java 代码中设置java api 为我们提供了一个 setCompoundDrawables(left,top,right,bottom); 方法,供开发人员设置相应的边界图片。操作方法十分简单,但是要注意版本兼容问题(Android 低版本 获取 Drawable 对象发的方式不同)看如下代码...
2020-04-03 11:23:20
134
原创 RxJava实现遍历List集合定时发射每条数据
RxJava实现遍历List集合定时发射每条数据参考自 https://www.jianshu.com/p/aa71c155e19a ,感谢原作者。
2020-04-03 11:06:32
657
原创 颜色透明度 16 进制对照表
100% — FF99% — FC98% — FA97% — F796% — F595% — F294% — F093% — ED92% — EB91% — E890% — E689% — E388% — E087% — DE86% — DB85% — D984% — D683% — D482% — D181% — CF80% — CC79% — C97...
2020-04-03 10:35:37
106
原创 Android Bitmap&Drawable&动画的优化建议
加载大图片或者一次性加载多张图片,应该在异步线程中进行图片的加载,涉及到 IO 操作,以及 CPU 密集操作,很可能引起卡顿。在 ListView,ViewPager,RecyclerView,GirdView 等组件中使用图片时,应做好图片的缓存避免始终持有图片导致内存溢出,也避免重复创建图片,引起性能问题。使用Glide等图片库使用 webp 替换 png 格式,或者使用 Ti...
2020-03-18 16:07:53
128
原创 一步一步教你将开源项目上传到jcenter
注册与上传 JCcenter写得比较清楚的文章,我直接引用过来了,感谢开源,我就不重复造轮子了。直接贴链接,感谢原作者。一步一步教你将开源项目上传到jcenter(第一种方式)一步一步教你将开源项目上传到jcenter(第二种方式)特别说明,我使用的是第一种方式完成了注册和相关设置选项。根据文中的方式操作,一步一步来,问题不到。可能需要特别注意的是配置文件的编写。这里我贴一份配置文件 ...
2020-03-11 14:39:11
203
原创 Android 带你从 0 实现基本的 BLE 开发
纯手写实现极简方式 BLE 开发,并适度封装。实现扫描、连接、发送、接收等功能下面带大家从 0 实现基本的 BLE 开发。文末提供 git 完整源码。权限进行蓝牙相关操作,需要使用到蓝牙权限,在AndroidManifest.xml清单文件中添加相应权限<uses-feature android:name="android.hardware.bluetooth_le" ...
2020-01-10 15:23:34
464
2
原创 Android 从开发角度来看经典蓝牙和低功耗(BLE)蓝牙的区别
1. 开发分类直接看图。从图中可以看到,对于数据量较大的传输,如音视频等开发,需要使用经典蓝牙模式。而对于现在兴起的 AIOT 物联网、智能家居等领域,则会选择低功耗蓝牙 BLE,因为成本和功耗更低,并对实时性要求更高。从现如今手机的实际体验来看,手机上的蓝牙应该是双模蓝牙,以小米手机为例,它可以连接蓝牙耳机进行听音乐,也可以连接智能家居设备,控制家电。所以,根据上图划分,按照应用划分的...
2020-01-06 11:36:04
399
原创 Android 经典蓝牙与 BLE 蓝牙基础
1. 概念蓝牙技术是一种无线数据和语音通信开放的全球规范,它是基于低成本的近距离无线连接,为固定和移动设备建立通信环境的一种特殊的近距离无线技术连接。2. 原理蓝牙是一种无线技术标准,可实现固定设备、移动设备和楼宇个人域网之间的短距离数据交换(使用2.4—2.485GHz的ISM波段的UHF无线电波)。蓝牙可连接多个设备,克服了数据同步的难题。蓝牙技术是世界著名的5家大公司一爱立信(Eri...
2020-01-06 10:32:02
594
原创 App 启动页 -- 加载一张图片以及解决白屏或者黑屏(闪屏)问题
功能App 启动页面。显示 1.5 秒到 2 秒,然后跳转到首页。实现1. 定义 drawable 文件 splash.xml<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <!...
2020-01-03 10:59:41
607
原创 Android适配方案笔记
文章目录重要概念px、pt、ppi、dpi、dp、sp 之间的关系各自的定义换算公式现象剖析核心问题适配方案直接适配原理优点缺点宽高限定符适配(分辨率限定符适配)原理优点缺点备注优点缺点SmallestWidth 适配原理优点缺点小工具今日头条适配方案原理升级版 ([AndroidAutoSize](https://juejin.im/post/5bce688e6fb9a05cf715d1c2))...
2019-05-30 15:16:07
152
1
原创 时间管理领域的三八原则
时间管理的三八原则所谓时间管理就是自我管理,就是改变习惯, 以令自己能把事情很快地做完, 即具有效率;更能把事情很快又很对地做完, 即具有效能。彼得·德鲁克说,“不能管理时间的人,就不能管理一切”。时间管理的“三八原则”。是说我们每个人在一天 24 小时中,基本上都是 8 小时上班、8 小时睡觉、8 小时业余。前面的两个“ 8 小时”大家都基本差不多,只不过是工作内容和形式的差异以及休息方式...
2019-05-30 14:32:03
306
原创 More than one file was found with OS independent path 'META-INF/proguard/androidx-annotations.pro'
错误现场在使用 RxBinding 时,引入implementation 'com.jakewharton.rxbinding3:rxbinding:3.0.0-alpha2'时报错More than one file was found with OS independent path ‘META-INF/proguard/androidx-annotations.pro’解决方案...
2018-12-19 18:02:46
872
原创 Android广播接收器和Activity间传递数据
思路Activity向广播接收器传递数据很简单,只需要在发送广播前将数据put进Intent中就行了。广播接收器怎么向Activity传送数据?这里要用到接口,通过在广播接收器里定义一个接口,然后让接收广播接收器数据的Activity实现这个接口。先看下面的栗子,Activity发送一个广播,然后广播接收器返回一个字符串。具体案例Activity 布局文件<?xml version...
2018-12-18 11:25:43
1014
转载 Android Room 数据库的使用
这里搜集有关 Room 数据库开发的有用文档,感谢原作者Android Room使用详解Room 数据库升级遇到的问题: Migration didn’t properly handle使用数据库UNIQUE constraint failed...
2018-12-01 20:39:46
488
原创 Android 经典蓝牙开发
本文主要讲解经典蓝牙的开发,主要包含以下几个知识点:蓝牙规范简介蓝牙 API 简介蓝牙开发的一般步骤相信通过这三个步骤,您会很快上手一个 Android 经典蓝牙开发的 App。蓝牙规范简介蓝牙是一种无线技术标准,用来让固定与移动设备,在短距离间交换数据,以形成个人局域网(PAN)。其使用短波特高频(UHF)无线电波,由 2.4 至 2.485 GHz 的 ISM 频段通信。蓝...
2018-11-29 18:02:26
1885
原创 Android 复选框控件 CheckBox 的基本用法以及自定义的实现
CheckBox 的基本用法设置复选框的Check状态的时候,调用 setChecked() 方法。追加 Android 复选框被选择时处理的时候,调用 setOnCheckedChangeListener() 方法,并把 CompoundButton.OnCheckedChangeListener 实例作为参数传入在 CompoundButton.OnCheckedChangeListe...
2018-11-09 14:51:28
2033
2
原创 关于实现重启 App 的两种思路
思路方案1:创建一个服务类,在该类中创建一个定时器,每隔一段时间触发该定时器,并获取到系统时间与指定重启的时间做匹配,匹配成功的话,发送一条广播,在广播中处理重启 App 逻辑。方案2:监听系统时间广播,Intent.ACTION_TIME_TICK 含义:系统每分钟会发出该广播,通过监听该广播,满足对应条件的时候重启 App。方案1实现自定义 ReStartAppService 类...
2018-11-06 19:45:54
2769
转载 Android 常用对话框大全之 Dialog
版权声明:本文出自阿钟的博客,转载请注明出处:http://blog.csdn.net/a_zhon唉!最近一直忙碌着写项目以至于都没有空出点时间来总结近期的学习,记录学习到的东西…现在正好有时间了就该好好记录一下学习的过程了。今天就来谈谈开发中经常用的到的一个控件——Dialog,对话框一般我们就用来提示一些信息给用户,让用户自主选择,或者在一些操作不可逆的情况下我们提示用户是否继续操作,下面...
2018-10-23 15:05:06
530
2
原创 RecyclerView库中的遗珠
原来文章写得很不错,收藏了,感谢原作者的创作。关于 RecyclerViewRecyclerView的强大无人不知,它封装了ViewHolder,便于我们回收复用;配合LayoutManager、ItemDecoration、ItemAnimator 便于你制定各种列表效果。当然可能还有一些“遗珠”你不太了解,今天就说说它们。RecyclerView 遗珠SortedList顾名思义就...
2018-10-23 14:45:00
153
W3CSchool1.chm
2012-10-12
DHTML 手册.chm
2012-10-12
《人件》中文版
2012-09-16
Retrofit简单上手的demo
2018-01-16
Intent传值Demo
2017-06-13
android xml 文件中按钮绑定点击事件的问题
发表于 2020-06-08 最后回复 2020-06-14
springmvc中控制器向前台弹出js窗口的问题
发表于 2014-09-25 最后回复 2020-04-18
*_hgncxzy_*的留言板
发表于 2020-01-02 最后回复 2020-01-02
Android打包发布测试遇到的问题,都进来看看
发表于 2017-05-20 最后回复 2019-02-22
Android room 数据库升级报错attempt to re-open an already-closed object:
发表于 2018-11-30 最后回复 2018-12-02
获取手机内所有图片/视频的高效方法
发表于 2017-05-11 最后回复 2017-05-22
ifram弹出层相关问题
发表于 2014-08-26 最后回复 2016-05-10
怎样开发android学习手册类app
发表于 2015-11-23 最后回复 2015-11-23
关于response.setHeader("Access-Control-Allow-Origin", "*")这句话的作用
发表于 2013-08-23 最后回复 2015-08-31
mysql插入数据问题
发表于 2014-09-15 最后回复 2015-02-14
百度定位中文乱码问题
发表于 2015-02-03 最后回复 2015-02-10
怎样巩固javaSE基础,求过来人指点迷津
发表于 2012-11-14 最后回复 2014-07-10
spring-framework-3.1.2.RELEASE里面包含的libd文件有什么作用
发表于 2014-03-10 最后回复 2014-03-10
oracle数据库问题
发表于 2013-09-09 最后回复 2013-11-22
关于js无访问权限的问题
发表于 2013-08-23 最后回复 2013-09-09
MediaPlayer类和JetPlayer 类的区别
发表于 2013-08-01 最后回复 2013-08-09
用jdom向硬盘写入xml文件遇到的org.jdom包不存在的问题
发表于 2013-03-07 最后回复 2013-03-22
【求助帖】东芝笔记本电池无法充电
发表于 2013-03-10 最后回复 2013-03-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝