网络通信
马占柱
Android行业多年软件开发经验,从事多年移动App开发,涉及医疗健康、商城、聊天、代驾打车、特种设备防护、公安边检查验领域;目前从事汽车车载系统开发工作。
展开
-
网络请求日志拦截器【直接可用】
网络请求中的拦截器,任意可用,我是从okgo里面拷贝出来的,还是不错的 使用的时候如下:完整使用如下,我用的是Retrofit,可以直接使用我的网络工具类也行:原创 2022-07-07 17:09:25 · 770 阅读 · 0 评论 -
安卓实现每日一句功能-一言API调用
一言API官网地址:Hitokoto - 一言一言API的开发者文档地址:一言开发者中心一言API的简介动漫也好、小说也好、网络也好,不论在哪里,我们总会看到有那么一两个句子能穿透你的心。我们把这些句子汇聚起来,形成一言网络,以传递更多的感动。如果可以,我们希望我们没有停止服务的那一天。简单来说,一言指的就是一句话,可以是动漫中的台词,也可以是网络上的各种小段子。 或是感动,或是开心,有或是单纯的回忆。来到这里,留下你所喜欢的那一句句话,与大家分享,这就是一言存在的目的。一言API的请求地原创 2021-10-08 14:05:03 · 1310 阅读 · 0 评论 -
jks cer 证书生成
jks是java keystore的简称,是java的数字证书库,查看证书私钥需要密码,避免私钥一名文的形式出现在代码中 客户端签名,服务器验签,确定是否是自己人 1.使用keytool生成jks,keytool工具在java->jdk->bin目录下,使用命令行,ps:红色部分请自行替换 keytool -genkey -alias 别名 -keyalg RSA -keystore 文件名.jks 2.经过一番复杂的输入,生成的jks文件在桌面->我的文档根目录下,..原创 2021-06-21 18:09:50 · 2517 阅读 · 0 评论 -
使用okhttp的websocket实现长连接【直接使用】
1. 概述有时候在开发中,我们会有一些需求是需要建立长连接的,比如自己项目中的付款码,需要商家用扫码枪来扫二维码,必须等商家扫完二维码收完款时然后发消息给客户端,这个时候就需要让客户端与服务器端建立长连接,达到让客户端与服务器端保持连接,直到收完款然后客户端自行断开连接,同时服务器端也需要在操作成功时候断开连接。2. 具体实现1>:添加对okhttp的依赖:compile 'com.squareup.okhttp3:okhttp:3.8.1'2>:连接websocket:原创 2021-03-24 18:20:22 · 3195 阅读 · 0 评论 -
AES128位数据加密算法【直接拷贝可用】
废话不多说,直接上!/** * 数据加密 * mazhanzhu */public class AES128Util { //密钥 public static final String AESKEY = "******************mzz"; //偏移量 public static final String IVVAL = "******************mzz"; //算法名 public static final String原创 2021-02-22 10:45:33 · 1986 阅读 · 0 评论 -
视频分片、分割、切片【IO流分成固定大小输出流】
方法一:/** * 将指定的文件按着给定的文件的字节数进行分割文件 * * @param filepath 源文件的路径 * @param fileSize 指定的小文件的大小[MB] 0:默认等分4份 */ public static ArrayList<File> divide(String filepath, int fileSize) { ArrayList<File> fileArrayList原创 2020-05-27 10:50:08 · 943 阅读 · 0 评论 -
在线测试MP4视频地址
以下视频皆收集于网络。2020年2月18日更新,新冠肺炎疫情相关视频:武汉加油中国加油https://stream7.iqilu.com/10339/upload_transcode/202002/18/20200218114723HDu3hhxqIT.mp4https://stream7.iqilu.com/10339/upload_transcode/202002/18/20200218093206z8V1JuPlpe.mp4https://stream7.iqilu.com/10339/a转载 2020-05-19 14:18:17 · 3902 阅读 · 0 评论 -
OKGO【配置】
首先在Application里的onCreate()里面初始化网络配置/** * 初始化OKgo的环境配置【可选】 */ private void initOkHttp() { //使用OkGo内置的log拦截器打印log,如果你觉得不好用,也可以自己写个,这个没有限制。 HttpLoggingInterceptor interce...原创 2020-05-07 14:10:27 · 944 阅读 · 0 评论 -
Json数据工具类
废话不多说,直接看代码!package com.anrongbc.util;import android.util.Log;import com.google.gson.Gson;import com.google.gson.JsonArray;import com.google.gson.JsonElement;import com.google.gson.JsonParse...原创 2019-01-03 14:16:12 · 225 阅读 · 0 评论 -
HTTP缓存机制
缓存对于移动端是非常重要的存在。减少请求次数,减小服务器压力. 本地数据读取速度更快,让页面不会空白几百毫秒。 在无网络的情况下提供数据。缓存一般由服务器控制(通过某些方式可以本地控制缓存,比如向过滤器添加缓存控制信息)。通过在请求头添加下面几个字端:Request请求头字段 意义 If-Modified-Since: Sun, 03 Jan 2016 03:47:16...转载 2019-01-16 10:52:55 · 205 阅读 · 0 评论 -
网络请求Retrofit工具类
项目中常常会用到网络请求的工具类,大多数其实都是可以自定义的,如果嫌麻烦的话,也可以直接使用我的,如有错误还请见谅!/** * Retrofit工具类 * Created by mazhanzhu on 2019/1/28. */public class RetrofitUtils { /** * 缓存文件 */ private static fi...原创 2019-01-28 14:46:12 · 699 阅读 · 0 评论 -
JavaMail发送邮件最全示例 email
最近用到了,懒的转载了,直接做一个跳转链接吧,还请见谅。原博主博客地址PoJavaMail 学习笔记总结(很有借鉴意义)转载 2019-05-21 16:56:43 · 1022 阅读 · 0 评论 -
android系统下消息推送机制
最近发现一个挺不错的链接,里面重点介绍各种推送实现方式:博客地址Android——MQTT推送转载 2019-06-06 11:49:32 · 524 阅读 · 0 评论 -
Android基础——断点续传的原理
刚刚有人问我断点续传的原理是什么?没有特别完整的说出来,实在是有点羞愧,自己理解的就是利用数据库在本地写缓存,然后把那个暂停的点记录一下,然后下一次再从那个点开始请求数据,现在一般都是用第三方的,导致具体的怎么实现的原理都有点忘记了~哎~真是对不起自己啊原理 :从字面上理解,所谓断点续传就是从停止的地方重新下载。 断点:线程停止的位置。 续传:从停止的位置重新下载。 用代码解析就是:断点...转载 2019-08-15 16:30:53 · 1213 阅读 · 0 评论 -
Error:java.net.UnknownServiceException【网络安全策略不允许将明文通信发送到20.25.0.94】
最近项目里面遇到一个网络异常,我用的Okgo的网络请求HashMap<String, String> map = new HashMap<>(); map.put("strBill", token); Log.e(TAG, "getInfo: 统一认证信息 请求信大网闸。。。。。。。"); OkGo.<String...原创 2019-09-27 10:17:34 · 743 阅读 · 0 评论 -
HttpURLConnection.setRequestProperty的作用
设置http请求头HttpURLConnection.setRequestProperty(String key,String value); 这个我居然都忘记了,哎~真是岁数大了,心好累。。。 例如:下面就是一个完整的原始网络请求方式HttpURLConnection conn = null; try { ...原创 2018-11-27 16:22:05 · 40779 阅读 · 5 评论 -
Android动态获取当前手机IP地址
public static String getIPAddress(Context context) { NetworkInfo info = ((ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo();...转载 2018-08-21 18:56:15 · 580 阅读 · 0 评论 -
AndroidVideoCache-视频边播放边缓存的代理策略
视频现状现在视频播放的需求越来越常见,就和16年上半年的直播一样,似乎不加个视频已经不是个正常的APP了,连微信朋友圈都支持上传小视频,更别谈以视频为本命的一系列APP。视频方面主要是两块,一个是视频录制,这个已经翻过一篇比较全的文章,再加上google开源的 grafika ,可以在踩坑时减少很多障碍,不过录制这块适配是大问题,需要不断调整。另一个方面就是视频播放,这方面的轮子比上面录制就转载 2017-11-08 15:48:24 · 1857 阅读 · 1 评论 -
环信对话列表界面记录
环信的对话列表界面最后一条消息与时间的处理,可以直接使用它的方法!原创 2017-11-05 15:53:10 · 576 阅读 · 0 评论 -
Android 实时监测(监听)网络连接状态变化,工具类可直接使用
看了网上的很多,都不是自己想要的。所以自己就参考着写了一个。实现这个的方法很多,我是想的这种,如果哪有不足,有bug的地方希望大家指出,共同进步。。。。先简单说一下思路:网络变化时系统会发出广播。所以我们监听这个广播,利用接口回调通知activity做相应的操作就好了。。步骤: 1、写个判断网络的工具类. 2、先写个类继承Broadc原创 2017-06-05 19:46:02 · 6264 阅读 · 3 评论 -
RxJava 从入门到放弃再到不离不弃
作者寄语很久之前就想写一个专题,专写Android开发框架,专题的名字叫 XXX 从入门到放弃 ,沉淀了这么久,看过网络诸多大神的博客,静下心来开始写这个专题,为什么叫入门到放弃呢;相信大家学习新框架的时候,尤其是像Rxjava或者Dagger等等这种新的编程思想;需要一定的阅读理解能力和思维逻辑;那么本专题旨在帮助大家不要太过急功近利,不要被冗长的代码和文章,晦涩的思想所打败,相信大转载 2017-11-24 10:56:49 · 445 阅读 · 0 评论 -
RxJava 和 RxAndroid 五(线程调度)
RxJava 和 RxAndroid 一 (基础)RxJava 和 RxAndroid 二(操作符的使用)RxJava 和 RxAndroid 三(生命周期控制和内存优化)RxJava 和 RxAndroid 四(RxBinding的使用)本文将有几个例子说明,rxjava线程调度的正确使用姿势。例1123转载 2018-01-04 17:48:31 · 216 阅读 · 0 评论 -
高德之微信聊天定位
初衷 因为国内很多基于app使用到了定位功能,因此写一篇仿照微信聊天定位的博客供大家参考。此次定位主要选用高德api进行代码开发。也许小伙伴会问定位为什么选用高德api 而不选用百度或者使用原生态android 定位功能!原因有如下几点 1、谷歌原始定位api 具有局限性,在室内或者其他复杂情况也许出现定位不准转载 2018-01-23 15:32:41 · 2470 阅读 · 0 评论 -
Android RxJava实际应用案例讲解:使用RxJava的最佳开发场景
前言Rxjava由于其基于事件流的链式调用、逻辑简洁 & 使用简单的特点,深受各大 Android开发者的欢迎。如果还不了解RxJava,请看文章:Android:这是一篇 清晰 & 易懂的Rxjava 入门教程今天,我将为大家带来 Rxjava的的基本使用 & 实际应用案例教学,即常见开发应用场景实现 ,并结合常用相关框架如Retrofit等,希望大家转载 2018-01-27 16:37:02 · 443 阅读 · 0 评论 -
Android:你要的WebView与 JS 交互方式 都在这里了
前言现在很多App里都内置了Web网页(Hybrid App),比如说很多电商平台,淘宝、京东、聚划算等等,如下图上述功能是由Android的WebView实现的,其中涉及到Android客户端与Web网页交互的实现今天我将全面介绍Android通过WebView与JS交互的全面方式阅读本文前请先阅读:Android开发:最全面、最易懂的Webview详解目录1. 交互方式总结Android与JS...转载 2018-05-17 15:53:52 · 191 阅读 · 0 评论 -
Retrofit2完全教程
本文注目录:Retrofit入门Retrofit注解详解Gson与ConverterRxJava与CallAdapter自定义Converter自定义CallAdapter其它说明前言本文中的Retrofit均指代Retrofit2.0。本文涉及到的代码以及测试使用的接口可在Github上找到。测试接口服务器在 server 项目下,直接运行 RESTServer.main() 即可启动测试服务器...转载 2018-05-25 11:57:13 · 458 阅读 · 0 评论 -
Android网络请求加密机制详解
Android开发中,难免会遇到需要加解密一些数据内容存到本地文件、或者通过网络传输到其他服务器和设备的问题,但并不是使用了加密就绝对安全了,如果加密函数使用不正确,加密数据很容易受到逆向破解攻击。还有很多开发者没有意识到的加密算法的问题。1、需要了解的基本概念 密码学的三大作用:加密( Encryption)、认证(Authentication),鉴定(Identification) 加密:防止...转载 2018-07-02 10:11:03 · 3165 阅读 · 0 评论 -
RxEasyHttp一款基于RxJava2+Retrofit2实现简单易用的网络请求框架
源码地址:https://github.com/zhou-you/RxEasyHttpRxEasyHttp本库是一款基于Retrofit2+RxJava2实现简单易用的网络请求框架,结合android平台特性的网络封装库,采用api链式调用一点到底,集成cookie管理,多种缓存模式,极简https配置,上传下载进度显示,请求错误自动重试,请求携带token、时间戳、签名sign动态配置,...转载 2018-07-26 15:10:46 · 571 阅读 · 0 评论 -
彻底搞懂Android文件存储---内部存储,外部存储以及各种存储路径解惑
前言:对于任何一个应用来说,无论是PC端应用还是Android应用,存储肯定是必不可少的。对于很多做Android开发的同学来说,可能认为文件存储很简单,调用一些诸如getFilesDir,getExternalStorageDirectory方法行了,但是虽然说它们会调用相应的方法来实现简单的数据存储。但是他们未必就搞懂了他的数据到底存在了哪里,以及他的数据是否存对了地方,或者是否做好了版本...转载 2018-08-03 16:35:46 · 583 阅读 · 0 评论