关于厂商推送 推送已经成为当下大部分App的必备功能了,相信大家每天都会收到新闻、聊天消息、普通App的活动等消息推送,而为了提升推送的到达率,大家也做了各种优化,最初应用进程被杀后,就收不到推送了,所以前几年就出了各种应用保活的方法,而Android 8.0以后应用保活的“妙招”就很难生效了。 为了提升推送的到达率,当应用被杀后大家都会选择走厂商的推送通道,各大厂商在系统级别会有一个长链接来统一处理推送消息,从而确保当应用被杀后你也能顺利收到推送,下图描述了小米的厂商推送流程。 通知栏消息和
2024-11-29前言 你如果做过Android开发,那一定熟悉里面各种官方提供的布局,比如LinearLayout,RelativeLayout等,你也一定和博主一样写过很多自定义控件,如果你学过Kotlin,并且用XML的DSL框架Anko声明Android组件,你会发现这与Flutter那种嵌套布局写法极为相似,下面是整个Flutter布局图: 基础组件 基础组件是组件的鼻祖,flutter必须要掌握的知识。在组件的划分上,Container,Row,Column都属于基础组件。但是Container又属
2024-11-29nginx 实现动静分离 Nginx动静分离基本概述 动静分离,通过中间件将动静分离和静态请求进行分离; 通过中间件将动态请求和静态请求分离,可以建上不必要的请求消耗,同事能减少请求的延时。 通过中间件将动态请求和静态请求分离,逻辑图如下: 动静分离只有好处:动静分离后,即使动态服务不可用,但静态资源不会受到影响。 Nginx动静分离场景实践 location / { root /code/wordpress; index.php; } location ~* \.(png|j
2024-11-29微信小程序新手向——界面布局 在微信开发者平台申请到AppId之后,采用不用云开发和不用模板创建项目 进入项目之后,在文件序列中找到index.json这个文件,其中navigationBarTitleText这个参数即为整个小程序的名称 我们将后面的文字改为“调查问卷”,那么相对应的标题也会发生改变 将标题做好之后,就开始做我们的一个主界面。 由于微信小程序本质上来说是个HTML5程序,所以我们需要将界面做一个布局。 切换到index.wxml文件,先写一个view将整个界面包裹起来 然后我
2024-11-29一、拖拽效果图展示 首先,上个gif图看看效果 吐血测试了一天,目前还未发现bug。ps(拖拽效果仅在前端实现,未和后端交互) 文章代码参考 ,参考文章还是存在一些bug和不足,比如,样式代码没给对,还有实现的拖拽是拖拽起始位置数据的替换,不是我想要的拖拽效果。 二、解决思路 首先,拖拽重要的计算清楚位置关系,从什么地方开始拖,拖到什么地方结束,以及如何判断有效的拖拽排序。 在拖拽开始时、拖拽过程中、拖拽结束时获取拖拽数据项的索引和实时的位置相关数据。给拖拽节点绑定catchtouchstar
2024-11-29系统介绍: 程序上交给用户进行使用时,需要提供程序的操作流程图,这样便于用户容易理解程序的具体工作步骤,现如今程序的操作流程都有一个大致的标准,即先通过登录页面提交登录数据,通过程序验证正确之后,用户才能在程序功能操作区页面操作对应的功能。 程序操作流程图 首先前端通过Vue和axios发送HTTP请求到后端的登录接口。在后端接收登录请求的Controller会使用`@RequestParam Map<String, Object> params`来接收前端传递的用户参数,
2024-11-29Android平台的视频开源库可谓百花齐放,直接给出比较流行的几大框架github地址: ,基本都是基于、、MediaPlayer等库进一步的开发,这里不再赘述了,因为之前项目中用到NiceVieoPlayer这个开源库:Gthub地址: ,简单轻巧的结构和界面很适合笔者项目,在上线之后,体验也可以,本次迭代准备新增倍速播放,毕竟视频播放太慢看起来也枯燥,于是乎开发视频倍速播放功能: 因开源库作者没有对倍速做进一步开放,故此笔者这里具体罗列下相关代码: 第一步,设置视频类型为IjkPlayer
2024-11-29介绍 在图片开发过程中经常会涉及到PixelMap的深拷贝,本例通过使用PixelMap的readPixelsToBuffer方法来实现深拷贝。在创建源PixelMap的时候,需要将解码参数设置为BGRA_8888,而在深拷贝创建目标PixelMap的时候需要将解码参数设置为RGBA_8888。详见。 效果图预览 使用说明 实现思路 PixelMap深拷贝方法。通过readPixelsToBuffer读取图片资源的PixelMap到ArrayBuffer,再通过createPixelMap得
2024-11-29概述 OAuth(Open Authorization),是一种开放标准授权协议。用于让用户可以授权第三方系统,访问自己在另一个系统上拥有的资源。 本文主要讲述OAuth里的授权码模式。 场景 考虑如下场景, 比如用户先注册微信,进行实名认证。后来登录了某个微信小程序,为了使用其上的某个功能,微信小程序希望获得用户的微信账号是否实名认证的信息。 这里 微信就是资源系统:用户的资源所在的系统,拥有资源服务和OAuth2.0认证服务。 实名认证信息就是资源。 微信小程序就是三方系统:请求获得用户的资
2024-11-29#11223344 格式,11位表示透明度,为0时完全透明,为255时完全不透明,后三个分量依次表示R,G,B颜色参数。 //获取颜色字符串 得到 #ffffff格式字符串 // colorTest 为 #FF0000 String c0=this.getResources().getString((int)R.color.colorTest);//获取颜色数值,为8位数表示 int c1 = this.getResources().getColor
2024-11-29