详解Android MVP开发模式
本文主要讲解MVP开发模式以及具体实例。一、简介MVP(Model View Presenter)模式是著名的MVC(Model View Controller)模式的一个演化版本,目前它在Android应用开发中越来越重要了。初看起来我们会感觉增加了很多类接口代码看起来更加清晰。MVP模式可以分离显示层和逻辑层,所以功能接口如何工作与功能...
2024-01-10Android自定义动态壁纸开发详解
看到有些手机酷炫的动态壁纸,有没有好奇过他们是如何实现的,其实我们自己也可以实现。一、动态壁纸原理如果你了解使用过SurfaceView的话,那么开发一款动态壁纸对你来说其实非常简单。动态壁纸的本质其实就是一个服务在维护一个动态壁纸引擎Engine,所以我们看到的动态效果其实是通过这个...
2024-01-10Android定时开机的流程详解
一、原理开(关)机原理,以低电平为例:1、平时,电平为高2、按下按键,电平为低;3、电源管理(硬件PM)部分对低电平处理:低电平一直持续n秒,认为是开(关)机信号4、进行开(关)机要实现定时开(关)机,只需要定时时间到来后产生硬件PM需要的开机信号(持续n秒的低电平)即可。既要定时,又要...
2024-01-10android开发设计模式之——单例模式详解
单例模式是设计模式中最常见也最简单的一种设计模式,保证了在程序中只有一个实例存在并且能全局的访问到。比如在Android实际APP 开发中用到的 账号信息对象管理, 数据库对象(SQLiteOpenHelper)等都会用到单例模式。下面针对一些例子分析一下我们在开发过程中应用单例模式需要注意的点。 一、...
2024-01-10Android 蓝牙开发实例解析
在使用手机时,蓝牙通信给我们带来很多方便。那么在Android手机中怎样进行蓝牙开发呢?本文以实例的方式讲解Android蓝牙开发的知识。 1、使用蓝牙的响应权限XML/HTML代码<uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> 2、配...
2024-01-10Android 音乐播放器的开发实例详解
本文将引导大家做一个音乐播放器,在做这个Android开发实例的过程中,能够帮助大家进一步熟悉和掌握学过的ListView和其他一些组件。为了有更好的学习效果,其中很多功能我们手动实现,例如音乐播放的快进快退等。 先欣赏下本实例完成后运行的界面效果: 首先我们建立项...
2024-01-10Android开发中线程池源码解析
线程池(英语:thread pool):一种线程使用模式。线程过多会带来调度开销,进而影响缓存局部性和整体性能。而线程池维护着多个线程,等待着监督管理者分配可并发执行的任务。这避免了在处理短时间任务时创建与销毁线程的代价。线程池不仅能够保证内核的充分利用,还能防止过分调度。可用线...
2024-01-10Android如何绘制发光效果详解
前言之前在看别人写自定义view作绘制的时候,看到别人家的view自带发光效果,看起来也是蛮炫酷的,于是自己也抽出时间来试用一下,这里做了一个模仿太阳的各种状态样式。先上效果先上效果:实现方式:public BlurMaskFilter(float radius, Blur style) {实现是使用的Paint类的setMaskFilter()方法,传入BlurMa...
2024-01-10详解android是如何管理内存的
目录前言Java Heap进程内存分配内存不足管理GC 垃圾回收内核交换守护进程低内存终止守护进程最后前言很高兴遇见你~内存优化一直是 Android 开发中的一个非常重要的话题,他直接影响着我们 app 的性能表现。但这个话题涉及到的内容很广且都偏向底层,让很多开发者望而却步。同时,内存优化更加偏...
2024-01-10Android开心消消乐代码实例详解
突然想要在android上写一个消消乐的代码,在此之前没有系统地学过java的面向对象,也没有任何android相关知识,不过还是会一点C++。8月初开始搭建环境,在这上面花了相当多的时间,然后看了一些视频和电子书,对android有了一个大概的了解,感觉差不多了的时候就开始写了。疯狂地查阅各种资料,反...
2024-01-10android解析JSON数据
JSONObject的使用 一、 JSON对象的使用:String content = "{'username': 'linux', 'password': '123456'}";JSONObject jsonObject = new JSONObject(content);String username = jsonObject.getString("username");String password = jsonObject.getString("password");二、 JSON数组的使用:Str...
2024-01-10javanio详解
NIO简介NIO是一种同步非阻塞的I/O模型,在Java 1.4 中引入了NIO框架,对应 java.nio 包,提供了 Channel , Selector,Buffer等抽象。NIO中的N可以理解为Non-blocking,不单纯是New。它支持面向缓冲的,基于通道的I/O操作方法。 NIO提供了与传统BIO模型中的 Socket 和 ServerSocket 相对应的 SocketChannel 和 ServerSocketChannel...
2024-01-10Android View的事件分发详解
1.前言 近两天学习了一下view的事件分发,把自己的理解总结了一遍,只表达了自己认为需要明白的地方,毕竟是菜鸟一枚,不对的地方还请大神们多指教!2.三个方法public boolean dispatchTouchEvent(MotionEvent ev)用于事件的分发,返回结果受以下两个方法的影响,表示是否消耗了事件。public boolean onI...
2024-01-10Android View事件分发机制详解
准备了一阵子,一直想写一篇事件分发的文章总结一下,这个知识点实在是太重要了。一个应用的布局是丰富的,有TextView,ImageView,Button等,这些子View的外层还有ViewGroup,如RelativeLayout,LinearLayout。作为一个开发者,我们会思考,当点击一个按钮,Android系统是怎样确定我点的就是按钮而不是TextView的...
2024-01-10解析Android点击事件分发机制
开头说说初衷网上关于点击事件分发的文章一搜一大堆,标题一看,不是“30分钟让你弄明白XXX”就是“这是讲解XXX最好的文章”,满怀憧憬与信心,忍不住兴奋的点进去一看,发现不是代码就全是图,我基本上看完了所有相关的文章,结果硬是看了三个小时也没搞懂。所以最后还是决定自己去试一试...
2024-01-10android实现截图并动画消失效果的思路详解
整体思路1、获取要截图的view2、根据这个view创建Bitmap3、保存图片,拿到图片路径4、把图片路径传入自定义view(自定义view实现的功能:画圆角边框,动画缩小至消失)主要用到的是ObjectAnimator属性动画的缩小和平移核心代码得到图片的路径private String getFilePath() { Bitmap bitmap = createViewBitmap(picIm...
2024-01-10Tornado 多进程实现分析详解
引子Tornado 是一个网络异步的的web开发框架, 并且可以利用多进程进行提高效率, 下面是创建一个多进程 tornado 程序的例子.#!/usr/bin/env python# -*- coding:utf-8 -*-import osimport timeimport tornado.webimport tornado.httpserverimport tornado.ioloopimport tornado.netutilimport tornado.processclass LongHandl...
2024-01-10haproxy详解
负载均衡类型:四层:LVS (Linux Virtual Server)HAProxy (High Availability Proxy)Nginx (1.9以上)七层: HAProxyNginx硬件: F5 https://F5.com/zh Netscaler https://www.citrix.com.cn/products/citrix-adc Array https://www.arraynetworks.com.cn 深信服 http://www.sangfor.com.cn 北京灵州 ht...
2024-01-10solr 的 edismax 详解
一、简介对于 solr 的 edismax 影响打分的策略一直都很模糊,因此也给工作带来了极大的不便。苦于国内相关 solr 介绍的博客等极少,且大都介绍的不是很深入,更没有详细的示例,因此买了两本书自己慢慢吭。现将自己的一些总结(心得)记录在此,以便自己以后翻阅,同时也可给有需要的开发人员参...
2024-01-10详解Android中点击事件的几种实现方式
在之前博文中多次使用了点击事件的处理实现,有朋友就问了,发现了很多按钮的点击实现,但有很多博文中使用的实现方式有都不一样,到底是怎么回事。今天我们就汇总一下点击事件的实现方式。点击事件的实现大致分为以下三种:(1)Activity 实现接口方式实现点击事件(经常使用)(2)自定...
2024-01-10Android开发中libs和jinLibs文件夹的作用详解
前言相信各位Android开发中们在Android 开发中经常和这两个文件夹打交道,以前一直迷迷糊糊的使用,没去想过。最近遇到了一些问题,仔细研究了一下,特此记录分享。下面话不多说了,来一起看看详细的介绍吧。libs: librarys用来存放三方库的地方,比如 *.jar 和 *.aar。在 Project 视图下能看到, Andro...
2024-01-10Android编程设计模式之模板方法模式详解
本文实例讲述了Android编程设计模式之模板方法模式。分享给大家供大家参考,具体如下:一、介绍在面向对象开发过程中,通常会遇到这样的一个问题,我们知道一个算法所需的关键步骤,并确定了这些步骤的执行顺序,但是,某些步骤的具体实现是未知的,或者说某些步骤的实现是会随着环境的变...
2024-01-10Koa日志中间件封装开发详解
对于一个服务器应用来说,日志的记录是必不可少的,我们需要使用其记录项目程序每天都做了什么,什么时候发生过错误,发生过什么错误等等,便于日后回顾、实时掌握服务器的运行状态,还原问题场景。日志的作用记录服务器程序运行状态;帮助开发者快速捕获错误,定位以及决解故障。日...
2024-01-10Vue shopCart 组件开发详解
一、shopCart组件(1) goods 父组件和 子组件 shopCart 传参deliveryPrice:{ // 单价 从json seller 对象数据中获取 type:Number, default:0},minPrice:{ // 最低起送价 从json seller 对象数据中获取 type:Number, default:20}其中 deliveryPrice 和 minPrice 的数据都是从 data.json数据 中 seller 对象下 获得。所以在goods 组件中还要 获取到 ...
2024-01-10解决android关于打开虚拟机时右侧工具栏不显示的问题
一开始我就纳闷了,怎么调试都只是一个光溜溜的界面,右侧的工具栏都没有如图:就一个光秃秃的界面,什么都没有,这就对调试很不方便于是我就试了试各种方法,然而并没有什么卵用。后来一次无意之后发现我好像皮肤没选中即:这就是问题的关键所在,当你没有选择的皮肤为no skin时,它...
2024-01-10