自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (22)
  • 收藏
  • 关注

原创 面试笔记:Java反射原理

什么是反射(反射的机制)反射是在运行状态中对任意一个类都可以知道其内部所有的属性和方法,对于任意一个对象都可以调用其属性和方法,这种动态获取信息和动态调用对象方法的功能称为Java的反射机制。反射的优缺点优点:可以动态执行和动态创建,在编码期不知道类和对象的具体信息,但在运行期间依旧可以根据业务功能执行方法和访问属性,最大程度发挥了编码的灵活性缺点:对性能有影响,反射操作总是慢于直接执行Java代码,代码量增多。维护起来比原生Java代码繁琐反射会跳过类型检查,导致安全性问题,例如泛型的类.

2021-11-19 19:47:37 2156

原创 面试笔记:Android网络编程(Http,Socket)协议

网络分层解构(四层解构)应用层(HTTP,FTP)定义了如何包装和解析数据,会按照HTTP协议将数据进行包装,然后传递到运输层传输层(TCP,UDP)运输层有两种运输方式主要是将数据发送到对应的端口,TCP为可靠的运输,UDP为不可靠的运输,一般都是通过Socket来进行调用,因为Socket封装了一组调用TCP和UDP的接口。网络层(IP)这一层主要指定了要传输到那个IP地址,其中会选择最优线路和路由算法等操作。数据链路层(ARP)负责把IP地址解析为硬件MAC地址,这样就找到了对应的..

2021-11-19 19:44:58 1898

原创 面试笔记Handler

Looper 死循环为什么不会导致应用卡死内部使用epoll机制实现(epoll机制:IO多路复用的一个实现;IO多路复用:在一个操作里同时监听多个输入输出源;)MessageQueue优先级队列 是如何进行排序的优先级排序,就是依靠msg对象中提供的when参数,根据时间来进行排序;Message结构Message是单链表结构:非线性,非顺序的物理结构,由n个节点组成;链表是采用“见缝插针”的存储方式,不要求内存连续,靠next指针关联;存储的时候是随机存储;访问的时候是顺序访问;..

2021-11-19 19:42:08 1509

原创 面试笔记Glide

// Glide使用RequestManager with = Glide.with(this);RequestBuilder<Drawable> load = with.load(url);load.into(iv); 为什么RequestManager能够管理生命周期?是因为Glide通过RequestMangerRetriever创建一个无UI的Fragment,并将这个Fragment的生命周期绑定到RequestManager上,所以当activity显示或隐藏或销毁时

2021-11-03 11:07:15 97

原创 面试笔记MVC-MVP-MVVM

MVCModel业务模型类,主要负责从网络或磁盘获取数据。View在Android中对应的是xml布局和view组件,负责将数据进行展示ControllerAndroid中控制层是由activity来负责的,activity承担了view的显示和业务逻辑的控制,所以比较繁杂。由于业务逻辑都在activity中处理所以view和model是可以直接交互的,所以m v c三层是高度耦合的。MVPMVP增加了一个中间层Presenter来解决耦合问题,Model和View的交互统一交给p层

2021-11-03 10:38:06 1060 1

原创 Android APP启动流程

Android应用开发中用到最多的Application,Activity是如何被创建出来的,又是如何被呈现到屏幕上的,下面通过源码的方式去体验一次完整的创建过程。先声明几个开发者能够看得见的比较重要的类:android.app.ActivityThreadandroid.app.Instrumentationandroid.app.ActivityThread.ApplicationThread这三个类组合在一起有一点MVP的思想在里面,M—>ApplicationThread,V—&g

2021-05-26 07:35:16 281

原创 Android调用系统相机和相册 兼容4.0—10.0 图像可压缩可上传

最近在项目中有需求需要用户上传照片,这个时候就需要在应用中打开相机和相册来辅助用户完成操作,在完成该功能的过程中出现了很多调用问题,不过最终在不断的测试下终于完成了该功能,下面就是具体的代码逻辑。...

2021-01-31 12:40:18 408 2

原创 创维酷开电视(coocaa tv)应用安装成功,设备重启后应用莫名消失的问题

公司的TV项目在上线酷开渠道的时候遇到了一个莫名的问题:应用安装成功后初次是可以正常运行的,但是在设备重启后打开系统的已安装应用列表后发现应用已经消失,通过pm查询却又发现有应用的包名,之后进行反复的测试发现是因为manifest清单文件里:android:installLocation这个属性的问题。android:installLocation的值有三个 internalOnly(内部存储) | auto(系统自动选择) | preferExternal(外部存储)如果不设置的情况下默认值为:aut

2021-01-25 10:39:15 2537 1

原创 Android 计算网络速度&文件下载剩余时间<<最优方案>>

最近在项目开发中遇到了一项功能,需要在下载文件时显示出当前的网络速度和预计剩余时间,在调研中发现使用的比较多的是通过TrafficStats来获取网络使用量然后在间隔每秒后重新获取一次网络使用量,两者相机算既可以得出每秒的网络使用量。public class FlowStats { private long lastTotalRxBytes; private long lastTimeStamp; public String getNetSpeedToMB(Context c

2020-12-15 09:29:11 1905

原创 Android自定义控件系列,自定义一个特殊的密码输入框

在项目中有涉及到输入密码的地方并且UI已经给了相应的效果图,由于普通的EditTextView已经无法满足要求,所以只能自己造轮子了。先看一张效果图老规矩 还是动手前先理思路~输入框嘛肯定得处理很多的按键响应事件 系统的EditTextView已经处理的够好了 所以得基于它来扩展~得把一些输入框的默认样式替换成自己的~把整个宽度等分成6份并计算出每个框框的x,y的位置并记录下来~设置监听事件用来获取当前输入的内容和数量~每当内容变化时动态的绘制成对应框框里的小圆点~计算下一个要输入的索引位

2020-10-31 11:04:16 520

原创 Android自定义一个可折叠收起的文本视图TextView

在项目中经常会碰到各种系统控件无法完成的效果,所以就需要手写控件来实现想要的效果。

2020-10-25 10:18:20 680

原创 100行代码撸一个可渐变颜色的TextView

在项目中会遇到各种各样的需求和效果,而这篇文章产生的前提就是在接到了产品经理提到的需求,在一个可左右滑动的页面顶部居中放置一个标识当前页面的指示器,在页面进行切换的时候当前页面的指示器从选中颜色渐变成默认颜色,而下个即将显示的指示器从默认颜色渐变成选中颜色。看下效果:...

2020-08-19 07:55:38 245

原创 Android中高级联动控件 RecyclerView+ViewPager嵌套滑动

先看效果图:

2020-08-10 07:13:53 2227

原创 Android运行时权限 多终端适配130行代码一劳永逸

Android在API 23之后开启了危险权限动态申请的机制,具体有哪些权限这里不做赘述,只拿笔者在手机和TV端开发中用到的权限例举,示例Demo并没有依赖任何的第三方库,纯Android代码,大约130行左右。1.新建一个用于检查权限的Activity,定义申请权限数组和请求码,在onCreate中进行权限检查,将没有授权的权限添加到待申请列表。 @Override prot...

2019-12-26 14:57:27 295

原创 Android (AlertDialog Dialog)弹框提示的极简操作

最近在新项目的开发中,经常使用要使用到Android的AlertDialog弹框,所以做了一个简单的封装。 /**提示框 * * @param tipText 要提示的文本 * @param mContext 视图上下文 */ public static void showTipDialog(String tipText,Context mC...

2019-10-31 15:58:30 687 1

原创 linux上查看日志文件技巧,tial、cat、wc,sed详解(文件大小、行数、查看指定行)

linux上查看日志文件技巧,tial、cat、sed详解(文件大小、行数、查看指定行)cat 命令wc 命令tail 命令sed 命令在一些配置比较齐全的公司都会有运维工程师这个职位,但也有大部分公司并没有配置这个职位,这个时候就需要开发人员掌握一定的服务器操作,今天就把我学到的一些linux日志操作写一下,希望对需要在服务器操作的朋友有所帮助。cat 命令这个命令是最直接的查看方式...

2019-07-11 16:50:22 3888

原创 ijkplayer-android编译 兼容多视频格式

目前所在公司是做教育少儿类视频播放的,起因是测试人员测试应用时发现的bug。(有的是视频播放有画面没有声音,有的是有声音没有画面)查找问题原因先看了一下播放正常的视频的编码信息视频编码格式h264   音频编码格式aac然后是有画面没声音的视频编码格式视频编码h264   音频编码格式(mpeg audio layer 1/2)看不懂什么意思,百度了一下说是mp2格式...

2018-09-13 16:28:02 4498 15

转载 Go语言与前辈们的对话

本文转载自:http://blog.csdn.net/UzV80PX5V412NE/article/details/788242951初次见面虽然这个目录中各种编程语言写的程序层出不穷,但Java还是怀念不幸罹难的C老头儿。他经常给同一目录中的Python ,Ruby说C老头儿知识多么渊博,贴近硬件运行,速度飞快,能从他身上学到很多东西等等。(注:参加《C老头儿和Java小子的硬盘夜话》)今天目录...

2018-02-12 15:14:59 259 1

原创 nginx服务代理后访问出错 403 forbidden 的解决办法

之前在配置nginx时遇到的这个问题最终得以解决   所以贴出解决的办法机器是conterOS 7.3的版本出现这种情况的原因我一共使用到三个方法原因1   是因为要访问的文件所属者不属于nginx   到文件存储目录输入命令: chown nginx:nginx file   更改文件的所有者原因2   是因为文件没有可读可写权限 到文件存储目

2018-01-29 10:39:16 11643

原创 GIT本地代码处于detached HEAD的情况(又称游离状态)的解决办法

有时候git由于一些操作的问题出现了detached HEAD 的情况   对于新手来说很焦急,但又不敢动,生怕搞错点什么把劳动成果付之东流。 下面的解决办法要顺序执行: 1. 先git commit 进行提交 (提交完你的本地分支指向的是你刚commit完的状态码 类似:06763f6) 2. git branch short06763f6 这句执行是在本地创建一个short分支

2018-01-29 10:20:47 3634

activationPhoto.zip

实现了Android调用系统相机和相册的全过程,图像可进行压缩,可上传至自己的服务器,注释非常详细,一看即懂!对应文章:https://blog.csdn.net/qq_35624842/article/details/113462461

2021-01-31

PermissionDemo.zip

Android运行时权限,6.0—9.0多版本,多终端(手机,TV盒子)130行代码一劳永逸,经过测试目前在华为、荣耀、小米、vivo手机上都可以实现权限的动态申请,另外TV端在小米、天猫、当贝部分盒子上也可以实现动态获取。

2019-12-26

Android.zip

1、基础工具 App 信息查看: 快速查看手机信息,App 信息,权限信息的渠道,避免去手机设置查找或者查看项目源代码的麻烦; 沙盒浏览: App 内部文件浏览的功能,支持删除和预览, 并且能通过 AirDrop 或者其他分享方式上传到 PC 中,进行更加细致的操作; MockGPS: App 能定位到全国各地,支持地图地位和手动输入经纬度; H5任意门: 开发测试同学可以快速输入 H5 页面地址,查看该页面效果; Crash查看: 方便本地打印出出现 Crash 的堆栈; 子线程UI: 快速定位哪一些 UI 操作在非主线程中进行渲染,避免不必要的问题; 清除本地数据: 一键删除沙盒中所有数据; NSLog: 把所有 NSLog 信息打印到UI界面,避免没有开发证书无法调式的尴尬; Lumberjack: 每一条 CocoaLumberjack 的日志信息,都在在 App 的界面中显示出来,再也不需要导出日志这么麻烦。 2、高级检测 帧率: App 帧率信息提供波形图查看功能,让帧率监控的趋势更加明显; CPU: App CPU 使用率信息提供波形图查看功能,让 CPU 监控的趋势更加形象; 内存: App 内存使用量信息提供波形图查看功能,让内存监控的趋势更加鲜明; 流量: 拦截 App 内部流量信息,提供波形图展示、流量概要展示、流量列表展示、流量筛选、流量详情,对流量信息统一拦截,成为我们 App 中自带的 “Charles”; 卡顿: 锁定 App 出现卡顿的时刻,打印出对应的代码调用堆栈; 自定义: 可以选择你要监控的选项,包括 FPS、CPU、内存、流量。监控完毕之后,把数据保存到本地,也可以导出来做更加细致的分析; Load 耗时: Load 函数耗时是 iOS 启动性能优化中重要的一项,该功能可以打印出所有 Load 函数的耗时,给开发者以参考。 3、视觉效果 颜色吸管: 方便设计师 UI 捉虫的时候,查看每一个组件的颜色值是否设置正确; 组件检查: 可以抓取任意一个UI控件,查看它们的详细信息,包括控件名称、控件位置、背景色、字体颜色、字体大小; 对齐标尺: 参考 Android 系统自带测试工具,能够实时捕获屏幕坐标,并且可以查看组件是否对齐; 元素边框线: 绘制出每一个 UI 组件的边框,对于组件布局有一定的参考意义。

2019-09-20

ApkTool苹果版.zip

这是基于苹果系统Mac os的apk反编译工具,可以反编译市面上80%左右的apk软件,亲测好用。

2019-07-11

蓝牙打印机

这是基于手机的,使用android设备连接打印机 并且进行打印。

2018-03-16

Android应用源码通用DLNA实现手机电视同步播放

本项目是一个家庭互联的项目源码,首先设备需要在一个局域网中,然后就可以通过手机查找到电视的ip进行投屏 可以将照片或者音乐或者视频投放到电视上进行播放

2017-02-09

android电子书Demo

这是基于Material Design风格打造的一款电子书阅读器 包含页面和请求的网络地址

2017-02-09

androidWiFi通信

是一款基于android设备之间通过wifi进行通信的Demo

2016-12-27

仿QQ空间源码

本项目是一个仿QQ空间的安卓项目源码,包括Android客户端,使用SSM框架的服务端、mysql数据库。

2016-11-25

文件浏览器

一个android手机的文件浏览器,类似ES文件浏览器

2016-11-22

多线程断点续传

基于文件存储写的一个多线程断点上传下载Demo

2016-11-22

电子商城源码

该项目是针对京东商城出的仿京东电子商城源码。

2016-11-22

AnndroidDialog框架

该框架包含近20种自定义弹框的展示方式,旋转弹出,3D弹出,淡入淡出,还增加了差值器弹出后晃动效果

2016-11-18

Android200种动画效果框架

该框架包含android原生动画和自定义动画共200种左右

2016-11-17

仿微信上传照片和拍照

仿微信发送图片时可选择临时拍照发送或者直接选择相册中某个照片进行发送

2016-11-17

系统相册和照相机

该源码是直接打开系统相机进行拍照 和打开系统相册选择照片

2016-11-17

新特性客户端

这是一款基于Rxjava与Retrofit形成MVP框架,并包括了android5.0 和6.0新特性的一款app源码。

2016-11-10

Anndroid进度条

这是一个自定义的进度条,可以动态设置view的进度 和他的颜色

2016-11-10

Android TV项目

神马视频是一款包含直播、回看、点播、设置于一体的TVLauncher

2016-11-08

RecyclerView封装

封装RecyclerView,支持下拉刷新, 分页, 自动加载 , 加载错误等等

2016-11-08

Eclipse版熊猫TV

此版为Eclipse版的熊猫TV源码,如果有需要的studio版的可以看另一个

2016-11-08

仿熊猫资源源码

仿熊猫TV源码,包含直播,动画

2016-11-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除