
学习用
文章平均质量分 72
chen_xiaoke
这个作者很懒,什么都没留下…
展开
-
Netyy架构原理
转载Netty架构原理,不怕你看不懂!Netty 的特点与 NIONetty 是一个异步的、基于事件驱动的网络应用框架,它可以用来开发高性能服务端和客户端。以前编写网络调用程序的时候,我们都会在客户端创建一个 Socket,通过这个 Socket 连接到服务端。服务端根据这个 Socket 创建一个 Thread,用来发出请求。客户端在发起调用以后,需要等待服务端处理完成,才能继续后面的操作。这样线程会出现等待的状态。如果客户端请求数越多,服务端创建的处理线程也会越多,JVM 如此多的线程并不是一转载 2020-11-16 15:22:37 · 375 阅读 · 0 评论 -
《android开发艺术探索》笔记
android开发艺术探索笔记第一章Activity的生命周期和启动模式1.1 生命周期1.1.1 正常情况下的生命周期分析1.1.2 异常情况下的生命周期分析1.2 Activity的启动模式1.2.2 Activity的Flag1.2.3 IntentFilter的匹配规则第二章 IPC机制第一章Activity的生命周期和启动模式1.1 生命周期1.1.1 正常情况下的生命周期分析(1)第一次启动:onCreate->onStart->onResume。(2)当用户打开一个新的原创 2020-08-03 17:19:16 · 5178 阅读 · 1 评论 -
界面布局之约束布局(ConstraintLayout)(一)
前言以前读书的时候,不知道约束布局怎么使用,所以会在创建项目的时候,先把布局改成LinearLayout或RelativeLayout,对于我这种菜鸟而言,RelativeLayout能够自由拖拽简直太舒服了,但是会有一个问题,自由拖拽的控件,在不同屏幕大小的手机上显示的效果不好,所以我去学习了约束布局,看了约束布局后,用起来也是很舒服的。正文这里先分享一下我学习的文章约束布局Constra...原创 2019-11-14 11:05:14 · 2103 阅读 · 0 评论 -
Arcgis for android runtime100 ——图例
前言图例由于官方文档写的很模糊,我是请假了师父的情况下,在他的指导下,看官方的iOS图例方法做的。正文 public void getmLegendBeans(OnLegendShowListener onLegendShowListener) { mLegendBeans.clear();//清除一次列表,保证不会让数据叠加 List<LayerWor...原创 2019-10-22 15:07:06 · 626 阅读 · 0 评论 -
Arcgis for android runtime100——我的位置以及路径跟踪
前言实习的日子过得很快,每天都有事可干,有东西可以学习,最近的项目是地图,用的是Arcgis for android Runtime 100 。以前并没接触过这个东西,所以也是不断的查看资料,查看官网的案例。给上我用到的链接:https://developers.arcgis.com/android/latest/guide/develop-your-first-map-app.htm。——...原创 2019-10-22 14:55:12 · 1182 阅读 · 1 评论 -
安卓学习日记——消息推送
1、Android实现推送方式解决方案几种常见的解决方案实现原理(1)轮询(pull)方式(2)SMS(push)方式(3)持久连接(push)方式解决方案:1、C2DM云端推送功能,Cloud to Device Messaging(依赖Google云端服务器)2、MQTT协议实现Android推送功能(wmqtt.jar是IBM提供的MQTT协议的实现)3、XMPP协议实现An...原创 2019-05-20 16:21:18 · 1026 阅读 · 1 评论 -
安卓学习日记——图片缓存组件
第三方库 Universal-Image-Loader框架的特点1.多线程下载图片,图片可以来源于网络,文件系统,项目文件夹assets中以及drawable中2.支持随意的配置ImageLoader,例如线程池,图片下载器,内存缓存策略,硬盘缓存策略图片显示选项以及其他的一些配置3.支持图片的内存缓存,文件系统缓存或者SD卡缓存4.支持图片下载过程的监听5.根据控件(lmage...原创 2019-05-15 14:19:14 · 339 阅读 · 0 评论 -
安卓学习日记——SlidingMenu
SlidingMenu(侧滑菜单)代码托管地址:https://github.com/jfeinstein10/SlidingMenu创建项目把下载的SlidingMenu集成到项目中File->New->Import Module->选择SlidingMenu下的library根据构造错误修改配置文件问题基本会出现在library 的build.gradle文件中...原创 2019-05-15 17:08:28 · 4090 阅读 · 0 评论 -
安卓学习日记——在线支付
Pingxx官网:https://www.pingxx.com/服务器端和客户端的配置参考官方的文档客户端代码package com.example.pingxx;import android.app.Activity;import android.content.ComponentName;import android.content.Intent;import android...原创 2019-05-21 09:57:22 · 294 阅读 · 0 评论 -
安卓学习日记——蓝牙
蓝牙蓝牙,是一种支持设备短距离通信(一般10m内,且无阻隔媒介)的无线电技术。能在包括移动电话、PDA、无线耳机、笔记本电脑等众多设备之间进行无线信息交换。利用“蓝牙”技术,能够有效的简化移动通信终端设备之间的通信,也能够成功的简化设备与Internet之间的通信,这样数据传输变得更加迅速高效,为无线通信拓宽道路。注意:Android 2.0 引入蓝牙接口,在开发时,需要真机测试,如果需要数据...原创 2019-05-21 11:32:35 · 321 阅读 · 0 评论 -
安卓学习日记——xUtils
https://github.com/qxbl/xUtils下载完之后,解压,导入jar包DbUtils的使用权限设置<uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.WRITE_EXTERN...原创 2019-05-16 11:17:15 · 588 阅读 · 0 评论 -
安卓学习日记——PullToRefresh
集成PullToRefresh组件PullToRefresh托管在Github上的开源组件,用于实现下拉刷新功能https://github.com/chrisbanes/Android-PullToRefresh在AS中集成PullToRefresh组件:1.创建项目2.导入已下载的PullToRefresh中的library3.修改错误出错的话就把上面那句删了,Androi...原创 2019-05-15 11:26:20 · 283 阅读 · 0 评论 -
安卓学习日记——NDK开发
NDK下载地址:https://developer.android.google.cn/ndk/downloads/index.html解压完之后配置Pathactivity_main.xml<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android...原创 2019-05-06 15:03:22 · 510 阅读 · 0 评论 -
安卓学习日记——传感器
概述大多数安卓设备都内置了传感器,用来测量移动,方向和各种环境条件。Android平台支持以下三类传感器:这些传感器能够提供精度高且准确的原始数据。如果要监视三维设备运动或定位,或者监视设备周围的环境变化,那么传感器会极其有用。例如:游戏可以追踪设备重力感应器的读数来推断复杂的用户手势和动作,比如倾斜,摇晃,旋转或摆动。同样地,天气应用程序可以使用设备温度传感器和湿度传感器来计算并...原创 2019-05-13 18:13:42 · 273 阅读 · 0 评论 -
安卓学习日记——内存管理技巧
1、使用Service的风险如果应用程序当中需要使用Service来执行后台任务的话,请一定要注意只有当任务正在执行的时候才应该让Service运行起来。另外,当任务执行完之后去停止Service的时候,要小心Service停止失败导致内存泄漏的情况。当我们启动一个Service时,系统会倾向于将这个Service所依赖的进程进行保留,这样就会导致这个进程变得非常消耗内存。并且,系统可以在...原创 2019-04-25 14:23:47 · 212 阅读 · 0 评论 -
安卓学习日记——Vitamio框架
Vitamio中文名称“维他蜜”,是一款Android与IOS平台上的全能多媒体开发框架,全面支持硬件解码与GPU渲染。Vitamio能够流程播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常见格式的视频,还可以在Android与IOS上跨平台支持MMS,RTSP,RTMP,HLS等常见的多种视频流媒体协议,包括点播与直播。下载地址:https://github.c...原创 2019-04-25 11:33:20 · 465 阅读 · 0 评论 -
安卓学习日记——Linux常用命令
ls命令ls命令是列出目录内容“ls -l”命令是以详情模式列出文件夹的内容“ls -a”命令会列出文件夹里的所有内容,包括以“.”开头的隐藏文件cd命令cd进入命令cd /进入根目录cd …返回上级pwd命令“pwd”在终端中显示当前工作目录的全路径history命令“history”命令就是历史记录,它显示了在终端中所执行过的所有命令的历史mkdir...原创 2019-05-05 15:44:46 · 167 阅读 · 0 评论 -
安卓学习日记——Bmob
Bmob的使用详见官网:www.bmob.cn增删改查 public void addClick(View v){ Person p=new Person(); p.setName("科少"); p.setAddress("温州"); p.save(new SaveListener<String>() { ...原创 2019-05-05 14:58:43 · 345 阅读 · 0 评论 -
安卓学习日记——百度地图
官网下载:http://lbsyun.baidu.com/index.php?title=androidsdk/sdkandev-download先去注册成为百度开发者,获取秘钥。将下载的包导入到工程中。在中加入如下代码配置开发密钥(AK):<application> <meta-data android:name="com.baidu....原创 2019-04-29 16:29:39 · 385 阅读 · 0 评论 -
安卓学习日记——二维码
zxingGoogle ZXing是一个开源Java类库用于解析多种格式的1D/2D条形码。下载地址:https://github.com/zxing/zxing搭建zxing项目:1.配置Maven环境(apache Maven下载:http://maven.apache.org/)2.编译code源码:mvn compile(在你下载的zxing目录下/core下)3.打包程序...原创 2019-05-21 15:35:46 · 238 阅读 · 0 评论 -
安卓学习日记——ShareSDK
官网:mob.com具体配置步骤可以参考官网的开发文档package com.example.sharesdk;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import com.mob.MobSDK;import cn.sha...原创 2019-05-16 14:26:57 · 352 阅读 · 0 评论 -
根据两点经纬度计算距离
private final double EARTH_RADIUS = 6378137.0;//地球半径,地球半径根据坐标系不同,数值也不同。 WGS1984坐标系:6378137.0;现在80坐标系: 6378140.0 ;北京54坐标系:6378245.0; //两点之间的距离 private double gps2m(double prelat, double prelng, ...原创 2019-09-16 14:25:52 · 1505 阅读 · 1 评论 -
Android8.0无法接收隐式广播
最近在学习Android的过程中,发现通过隐式注册的广播都没有效果了,百度了一下,发现是Android8.0之后对广播进行了限制。参考了博客https://blog.youkuaiyun.com/chenrenxiang/article/details/80886745...原创 2019-07-12 14:44:56 · 297 阅读 · 0 评论 -
java.lang.NoClassDefFoundError:failed resolution of :Lorg/apache/http/ProtocolVersion
在使用HttpClient时报错解决办法:在application中插入标签 <uses-library android:name="org.apache.http.legacy" android:required="false" />这样就可以了原创 2019-07-16 15:44:26 · 1179 阅读 · 0 评论 -
Android ERR_CLEARTEXT_NOT_PERMITTED
访问网页的问题:这个问题是由于Android9.0对未加密的流量不在信任,添加了新的限制。解决方法:在Android 的mainfest.xml中的application添加一句配置<?xml version="1.0" encoding="utf-8"?><manifest ...> <uses-permission android:name="...原创 2019-07-16 14:00:18 · 485 阅读 · 0 评论 -
android8.0以上版本的前台服务
转载:https://blog.youkuaiyun.com/qq_40909351/article/details/84986330#commentBox这个也是我最近看书遇到的问题吧,这边转一下别人的,方便以后查看android8.0以上版本的前台服务本人是小白,最近在学习郭林老师的第一行代码的第二版时,在第10章的前台服务的小节里面,发现在我的模拟器上运行不了,然后找了许多大神写的博客,发现原因是...转载 2019-07-16 11:02:49 · 3221 阅读 · 0 评论 -
android 7.0拍照问题file:///storage/emulated/0/photo.jpeg exposed beyond app through ClipData.Item.getUri
这边记录一下我遇到的问题以及大佬的解决办法问题:解决办法:在Application的onCreat()方法中添加以下代码:// android 7.0系统解决拍照的问题 StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder(); StrictMode.setVmPoli...转载 2019-07-15 16:18:27 · 1352 阅读 · 0 评论 -
好用的翻译
这边分享一下我收藏的Github上好用的一些翻译的链接,觉得自己有需要的可以Fork过去https://github.com/qxbl/gold-miner设计到的比较多,有兴趣的可以看一下。...原创 2019-06-23 16:32:08 · 265 阅读 · 0 评论 -
记一次面试题
1.常用的单例模式单例模式——顾名思义即在既定的业务场景下某一实体类只需存在一个对象,就能充分的处理所有的业务需求。而且在某种现场环境下,创建这样的对象对系统性能的开销非常大。正因为这种特性,单利模式通常具有节省系统开销的效果。1.饿汉式类加载的时候就会初始化,他是线程安全的,但是类加载的时候就初始化这样会预先消耗一部分资源。/** * Created by lijiayi on 201...原创 2019-06-12 10:26:47 · 799 阅读 · 1 评论 -
安卓学习日记——Shortcut
Shortcuts初体验好了, 在我们开始撸码之前, 还是来看看这个新特性有多赞, 新系统中好多google家的APP都集成了这项功能, 所以, 我们先挑个APP来体验一下.长按会发现有个快捷打开,我们这次要实现的就是这个。这个功能还是很实用的, 有了它, 我们就可以直接打开短信应用给某人发短信啦~~ 下面我们就开始学习一下这个新的Shortcuts在开发中如何使用!静态配置shortcu...原创 2019-06-10 11:49:51 · 2198 阅读 · 0 评论 -
Android四大核心组件——汇总
一、Activity生命周期七大方法详解onCreate:Activity创建时第一个调用的方法,通常我们在该方法中加载布局文件,初始化UI组件,事件注册等等onStart:在onCreate方法之后调用,用于显示界面,但用户还不能进行交互onRestart:当一个stoped状态的Activity被返回时调用,之后再调用onStart进入运行状态onResume:在onStart之...原创 2019-06-03 10:56:21 · 4536 阅读 · 1 评论 -
安卓学习日记——广告
万普积分墙去万普官网,注册账号,登录(www.waps.cn)下载SKD,导包添加权限<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/&g...原创 2019-05-13 18:14:54 · 230 阅读 · 0 评论 -
安卓学习日记——语音识别
科大讯飞语音官网:https://www.xfyun.cn/1注册,2登录,3创建应用,4下载SDK导入jar包同时将libs中的文件夹全都复制到自己创建的jniLibs目录中原创 2019-05-22 17:38:55 · 469 阅读 · 0 评论 -
安卓学习日记——人脸识别
人脸识别可以做什么人脸检测:在图片中找到一个或多个人脸的位置,云端返回人脸坐标到客户端,来定位人脸在图片中的位置。面部关键点检测:在检测到人脸框中,进一步定位人脸的五官和轮廓位置,目前采用关键点21点模型定位位置,关联关键你点的平均精确度高达96%。人脸验证:用于快速判定两张照片是否为同一个人,此项技术可用于手机/电脑解锁、人员考勤、身份验证等各个领域。全球理领先的精确率在目前公开的LWF测...原创 2019-05-22 17:29:16 · 349 阅读 · 0 评论 -
安卓学习日记——NFC
NFC介绍近场通信又称近距离无线通信,是一种短距离的高频无线通信技术,允许电子设备之间进行非接触式点对点数据传输,交换数据。这个技术由免接触式射频识别(RFID)演变而来,由飞利浦和索尼共同研制开发,其基础是RFID及互连技术。近场通信是一种短距高频的无线电技术,在13.56MHz频率运行于20厘米距离内。其传输速度有106 Kbit/秒、212 Kbit/秒或者424 Kbit/秒三种。近场...原创 2019-05-22 17:15:55 · 480 阅读 · 0 评论 -
安卓学习日记——音频录制
音频录制package com.example.mediarecorder;import android.media.MediaRecorder;import android.os.Environment;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.vi...原创 2019-04-24 17:18:16 · 155 阅读 · 0 评论 -
安卓学习日记——Camera
开始先说一下我遇到的问题以及解决的办法为了提高私有目录的安全性,防止应用信息的泄漏,从 Android 7.0 开始,应用私有目录的访问权限被做限制。具体表现为,开发人员不能够再简单地通过 file:// URI 访问其他应用的私有目录文件或者让其他应用访问自己的私有目录文件。对于面向 Android 7.0 的应用,Android 框架执行的 StrictMode API 政策禁止在您的应用外...原创 2019-04-24 16:17:10 · 222 阅读 · 0 评论 -
个人作业——防盗软件
功能实现开机自检本机的配置信息能保存一个安全号码能保存本机的SIM信息能选择是否开启防盗功能当检测到SIM卡更换时,能将更换后的SIM卡号发送到安全号码上能通过接受安全号码的短信进行锁屏,解锁手机屏幕软件开机自启动软件以后台服务形式运行代码块BootBroadcastReceiverpackage com.example.anti;import android.M...原创 2019-04-24 14:17:43 · 400 阅读 · 3 评论 -
案例——SQLite游戏玩家管理
需求分析我们设计的简单的游戏玩家属性Game Player编号 id玩家 player分数 score关数 level功能设计1、显示游戏玩家裂变,按分数降序2、管理员可手动修改每个玩家的数据3、管理员可单机后单独查看一个玩家的数据4、管理员可删除一个玩家的数据功能实现1、定义元数据类:GameMetaData和表结构数据内部类GamePlayer2、...原创 2019-04-12 09:20:37 · 578 阅读 · 0 评论 -
安卓学习日记——handler
Handler介绍前奏:在Android开发中,我们常常会使用单独的线程来完成某些操作,比如用一个线程来完成从网络上下载图片,然后显示在一个ImageView上,在多线程操作时,Android中必须保证以下两点:1、不要阻塞UI线程2、不要在UI线程之外访问Android UI工具包例子 private Handler handler=new Handler(){ ...原创 2019-04-08 18:04:04 · 1762 阅读 · 3 评论