Nela Blog

崭新万物 正上升幻灭如明星

Android—push方案总结

简述push的实现方案并讲解厂商push需要注意的case

Android—push总结 本文简介 前文介绍了push的具体集成方式,本文介绍push的实现原理和方案,针对长链接方案,了解一种push实现的思路,并介绍sdk层如何将push和业务模块相互结合。 push原理 长链接 长链接是为了 数据传输和推送。保证客户端和服务端一直处于通信状态。 一种是app层的长链接,由apk自己维护,需要做进程保活断...

Activity启动模式和近期任务卡

记录解决启动模式和近期任务卡影响的bug

Activity启动模式和近期任务卡 简介 此文讲了,四种启动模式中存在的坑。 并讲述了和启动模式栈和近期任务卡之间的关系。 四种启动模式和坑 可以通过此命令查看栈 和activity的情况 1 adb shell dumpsys activity standard 要注意的是此模式在5.0之后,如果开启的activity不属于同一个应用内,则近期任务会显示两张任务卡 si...

Android逆向工程初探

Android逆向工程初探 简介 本文介绍,如何使用APKtool反编译apk,使用dex2jar和jd-gui查看源码,并使用签名工具,对修改后的apk进行二次签名。 如何配置smali调试环境,动态调试和修改smali源码。并简单介绍了smali的语法和代码调试跟踪思路。 最后介绍了apk内部数据库如何获取。 准备工作 参考如下博客: https://blog.csdn.ne...

Android消息推送和提醒

Android消息推送和提醒(Push/Calender) 简介 本文介绍两种app未在前台的情况下,如何进行有效的消息通知的方法。 第一种方式调用系统日历api,插入日历事件在指定时间进行提示。 第二种方式通过集成google推送,fireBase.唤醒app,或者提示一个notification. 使用Push 集成firebaseCloudMessage google ...

Android-H5开发总结

Hybrid混合开发 简介 本文提供了如何使用原生webview和android交互的相关资料。 着重介绍了如何使用AgentWeb 进行混合开发,从sdk集成到重点api的调用,和相关功能的配置,并介绍了如何加入下拉刷新功能。 最后介绍了,如何对webview进行调试,提供了h5-android的界面简单的路由跳转思路 ,利用eventBus通知h5重绘的事件的方法。 webvi...

oauth2.0鉴权登陆

oauth2.0鉴权登陆 基本概念 授权是一个古老的概念,它是一个多用户系统必须支持的功能特性 意在将资源授权给第三方应用,支持细粒度的权限控制 OAuth的特点是“现场授权”或“在线授权 完整的授权码模式 第三方授权的权利管制(泊车钥匙和主车钥匙) 客户端意思为3方应用 (A)用户访问客户端,后者将前者导向认证服务器。 (B)用户选择是否给予客户端授权。 (C)假设用户给予授...

音视频技术扫盲

音视频技术扫盲 简介 因本人目前从事音视频sdk的二次封装,因此为了弄清业务的大致流程,更好的与小伙伴们进行交流,迫不得已进行了一波概念上的扫盲…… 概念 音视频引擎 视频引擎这一概念的核心是:把视频转码、存储、分发的计算工作迁移到云服务器 采集-处理-编码-推流-解码-渲染 处理 android-gpuimage 音频处理中具体包含混音、降噪和声音特效等处理,视频处理中包含美颜...

Android 源码编译流程分析

android 源码编译方式 简介 本文介绍了,Android 源码原生的编译方式。 介绍了copy机制和宏控机制的优点,并附上了通过脚本,实现一种copy机制和宏控机制的大致思路和关键代码。 编译环境和配置 1.source build/envset.sh //加载 vendorsetup.sh 脚本 //加载 lunch 的命令(在本次回话窗口有效) 2.lu...

StatusBar添加Notifaction流程分析

StatusBar Notifaction 简介 本文介绍了系统产生一个notifaction产生的流程,提供了如何在流程中加入拦截,拦截掉第三方应用的notification. StatusBar通过Notifaction初始化通知条 PhoneStatusBar ->BaseStatusBar boot 引导文件启动 SystemUI...

Jekyll + github pages 搭建blog

Jekyll + github pages 搭建blog 简介 本文说明如何github +jekyll 搭建blog. 搭建步骤 github 项目建立 jekyll 测试环境搭建: ruby安装 gems 安装 jekyll 安装 sublime Text+markdown 编辑器 jekyll模...