
移动开发
文章平均质量分 60
茶不思基
电子爱好者
展开
-
个推SDK推送流程踩坑分析
在使用个推的过程中遇到了一些坑,分享给有需要的朋友,核心流程还是以官网的内容为准个推官网基本介绍推送这个功能还是挺常用,自己做一套服务太复杂,使用第三方推送一般能直接解决:不用自己开发,难度大大降低,稳定性也有保障对于前端开发者来说,也不用自己再去定制通知栏实际对于开发者来说,有些场景需要显示通知栏,而有些场景又不需要,因此通知分为:标准通知消息应用内透传消息不同的开发商实现的方式不太一样,比如谷歌的FCM推送就和国内有着比较大的差异,后期专门写一篇谷歌推送的使用Androi.原创 2020-11-06 18:28:06 · 1133 阅读 · 0 评论 -
5.1.0| DiffUtil.ItemCallback实现细颗粒度的差分更新
DiffUtil.ItemCallback和ListAdapter的出现,让列表的刷新性能和简单性都得到了提升,但同时还是有些坑ListAdapter继承自RecyclerView.Adapter,主要是实现了submitList方法来归一化提交数据,这样会触发在子线程对比数据差异,然后再在主线程更新有差异化的数据,这里的差异化可分为:更新列表中item变化的部分更新item内部发生的部分变化ItemCallback定义public abstract static class ItemCa.原创 2020-10-28 09:42:11 · 4237 阅读 · 0 评论 -
5.1.0| Fragment如何快捷实现返回键的监听响应?
最早是在返回回调中监听override fun onBackPressed() { super.onBackPressed() L.d(TAG) { "onBackPressed: " }}这样的做法不好标准好,经常需要来一个写一个,因此需要来一个写一个,因此可以这样override fun onActivityCreated(savedInstanceState: Bundle?) { super.onActivityCreated(savedInstanceSt原创 2020-10-26 08:01:06 · 179 阅读 · 0 评论 -
Google FireBase Android使用初步介绍
Google FireBase作为Google的产品致力于 Android/ios/web大前端的应用构建、改进、运营增长等方向,虽然功能齐全但是难免还是会水土不服,甚至于有些服务在国内无法使用基本介绍官方网站,自备梯子FireBase功能不少,甚至有点眼花缭乱之前的项目中必须好的原因有点:保证海外版本的推送消息(国内外做了多渠道)统一数据统计平台,谷歌的数据分析平台还是非常牛逼的,没有之一AB测试 AB测试需要需要配置条件拉取以及数据统计,需要一系列工具支持食用指南目前来看,如.原创 2020-10-10 19:46:26 · 1420 阅读 · 0 评论 -
Android国内海外apk多渠道打包了解一下?
本文主要讲解一个代码工程需要同时需要打包国内外apk包,国外一般只在google play发布,国内发布的平台会更多一些,包括华为、小米、应用宝、vivo等应用市场平台需求整理国内和海外版本差异一般比较大,有一部分代码都是不一样的,比如国外一般使用google推送,而国内一般使用个推等第三方推送平台。国内的版本,功能都是一致,一般只是渠道号不一致,以保证数据统计需求,而其它功能都是一致的,那么主要需要解决以下几个问题:国内版本支持一次打包多个渠道不一样的apk,它们之间的代码逻辑是一样的一次工.原创 2020-09-22 22:41:11 · 3259 阅读 · 3 评论 -
安卓应用启动页布局如何高效实现?
本文主要说明启动页布局如何快速定义和遇到的问题场景分析最近工作上做首页启动页,遇到了几个要核心解决的问题。启动页充满整个屏幕的,如何按固定横纵比例保持比例拉伸。如何去适配所有的新老机型系统版本。所有的UI都要在drawable中完成,有人可能会想到直接可以放在布局文件当中,但是这样有一个问题就是在启动的时候会黑屏的延时,主要原因也是因为应用启动是需要占用一定的时长。对应的解决方案是如下整个内容分为前景和背景,背景按屏幕比例自动拉伸,前进需要固定位置固定大小这个遇到了个坑后面单独讲。.原创 2020-09-20 08:10:01 · 1200 阅读 · 0 评论 -
Android AudioRecord 的使用
AudioRecord本工程实现pcm多配置(采样率、文件格式可选)的录音和播放工具,可用户音频的录制。工程代码:https://github.com/worson/AudioRecord.git[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2Hvl37yP-1580284239332)(img/picture_2020_01_29_14___52_41.pn...原创 2020-01-29 15:55:17 · 4167 阅读 · 0 评论 -
Android 获取指南针数据
要想实现指南针功能,android中不是有方向传感器吗?其实android的方向传感器不是物理实际存在的,它只是逻辑上的,什么意思,就是它是通过磁力计和加速度计抽象出来的。因此,这个方位的获得其实是通过这两个传感器的数据通过一定的算法得到的。而这个算法则封装在了api中,我们只需直接使用即可。原创 2016-12-07 00:23:39 · 7621 阅读 · 2 评论 -
软件开发-发布会总结
准备发布会的这段时间里,真好好像光晕一起的一次拔河比赛,第一个成员在同一根绳子上面,大家都使出了浑身解数,即使大家因为熬夜加班累得虚脱,但是都是咬紧牙关坚持着,毕竟只要稍微一松手就推动了整场比赛。早在发布会前,大概在7月份左右,我加入arway的开发,那里下忙着给surfaceview版的arway定个终版而路测,随着发版后替换成了opengl的开发方案,大概之前都从未涉及,虽然开发的激情高涨原创 2016-12-07 00:09:24 · 1133 阅读 · 0 评论 -
Android Studio 快捷键汇总讲解
最常用:F1 查询方法F2 定位文件内语法错误处Ctrl+E:查看最近打开过的文件double Shift:全局文件查找,到文件名称层面。导航 #F12 structure全局指令搜索 CMD+SHIFT+AALT + SHIFT + UP/DOWN 上下移动代码CTRL + J 显示该方法或类的apiCTRL + ALT + H 查找调用的位置CMD + SHI原创 2016-11-30 16:44:48 · 437 阅读 · 0 评论 -
OpenGL 全屏抗锯齿解决场景闪烁问题
全屏抗锯齿(FullSceneAnti-Aliasing)可以有效的消除多边形结合处(特别是较小的多边形间组合中)的错位现象,降低了图像的失真度。全景抗锯齿在进行处理时,须对图像附近的像素进行2-4次采样,以达到不同级别的抗锯齿效果。简单的说也就是将图像边缘及其两侧的像素颜色进行混合,然后用新生成的具有混合特性的点来替换原来位置上的点以达到柔化物体外形、消除锯齿的效果。同时此方法也会带来模糊的效果。原创 2016-11-29 17:55:24 · 2704 阅读 · 0 评论 -
Android蓝牙BLE(二)--使用蓝牙主机
使用BLE作为主机(中心设备)时,需要在附近有可扫描的从机设备,通过扫描设备、连接设备等操作后,则可进行传输操作。其中每次能传输的数据大小,多由从机设备决定,目前外围低功耗BLE设备每次只能传输20Byte,当用Ios和android作服务端时,可单次传输更多的数据。一、获取蓝牙管理类 BluetoothManager :用来管理Adapter、获取连接状态之类,别个创建外围设备时需要用它来创原创 2016-06-11 22:58:08 · 650 阅读 · 0 评论 -
Android蓝牙BLE(一)--使用介绍
一、基本BLE概念介绍 蓝牙BLE,主要以中心设备和周边设备作为区分,分别对应BLE设备的主机、从机,其主要区别是,从机可以发起广播,而主机能扫描广播,并主机连接BLE蓝牙从机。目前在Android 平台上,主机API从4.3以上已经支持,而从机API需要5.0以上的系统才能使用。 二、BLE 协议介绍 Generic Attribute Profile (GATT) 通过B原创 2016-06-11 22:24:25 · 587 阅读 · 0 评论 -
ListView的性能优化之convertView和viewHolder
最近碰到的面试题中经常会碰到问”ListView的优化”问题。所以就拿自己之前写的微博客户端的程序做下优化。自己查了些资料,看了别人写的博客,得出结论,ListView优化大致从以下几个角度:1.复用已经生成的convertView;2.添加viewHolder类;3.缓存数据(图片缓存);4.分页加载。一、复用convertView首先讲下ListView的原转载 2016-03-05 16:36:37 · 261 阅读 · 0 评论