10 冷漠的学徒

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 10w+

学徒浅析Android——基于Microsoft的OAUTH2.0认证(三)

第三章 MSAL API和Microsoft API的使用本章围绕Microsoft Authentication Library的使用讲述如何调用Microsoft API。目录小节如下:1.1 MSAL库常用API的介绍1.2 scope的配置1.3 GRAPH库的使用1.4 手动请求Microsoft API其他相关文章:基于Microsoft的OAUTH2.0认证(一):基本概念梳理基于Microsoft的OAUTH2.0认证(二):MSAL库的引用和定制基于Mi

2020-10-12 15:20:43

学徒浅析Android——基于Microsoft的OAUTH2.0认证(一)

之所以会做Microsoft的OAUTH2.0对应,完全是因为这个通知,时间结点是2020年10月13号,我在8月初才被告知这件事。当时并不觉得是个难点,毕竟微软是个大厂,大厂推出的服务变动都是有指导文件,抱着这份信任,开始着手对应这个变动,但也因此一步一步走向深渊。为了对后来者提供必要的帮助,确保不再走我走过得坑,所以写下这个系列,希望对大家有所帮助。本章将介绍跟Exchange、outlook相关的基本概念和术语,理解了这些术语和概念,将帮助你更直观的查阅Microsoft的文档。其他相关文章:基于

2020-10-09 11:27:06

学徒浅析Android——基于Microsoft的OAUTH2.0认证(二)

MSAL库的引用和定制本章围绕Microsoft Authentication Library讲述两件事:1、如何引用MSAL库;2、如何对MSAL库进行二次开发。其他相关文章:基于Microsoft的OAUTH2.0认证(一):基本概念梳理基于Microsoft的OAUTH2.0认证(三):MSAL API和Microsoft API的使用基于Microsoft的OAUTH2.0认证(四):常见错误归纳1. msal库的引用...

2020-10-09 11:22:37

学徒浅析Android——chromium升级引起的em属性变更

最近在进行一项webview的展示测试时,用到了甲方提供的一个测试html,这个html中包含了最基本的html标签。本以为只是走走过场,没想到测出了一个bug——<ul>标签对应的小圆点不能显示了。并且这个测试html用手机搭载的chrome加载时是显示正常的。好在webview不会有修改样式这种逆天的本领,所以把调查重点放在了添加css的操作上。一番排除法后,发现是em这个属性搞的鬼。由于对html知之甚少,特意请教了前端大佬,现把em的变化跟大家分享下。根据w3c上的介绍,e.

2020-05-27 00:21:25

学徒浅析Android——Role带来的角色扮演

在Q以前,如果我们的应用是一个短信或拨号之类的特殊应用,想要通知用户将我们的应用替换掉手机自带的预搭载应用,TelecomManager.ACTION_CHANGE_DEFAULT_DIALER和Telephony.Sms.Intents.ACTION_CHANGE_DEFAULT就可以帮我们实现。但在Q上,google改变这种处理方案,并推出了一个新特性——Role/RoleManager。从文档介绍来看,是提供管理应用服务的,最常见的就是默认应用切换功能。有了新的替代API,那么原先的T...

2020-05-18 20:30:38

学徒浅析Android——Android Q隐藏在Lock中的小bug(一)

距离上一篇文章过去半年了,要不是最近的一次偶然搜索,都快忘了这个账号的密码。谷歌还在一如既往的更新,我还在迷眼乱花中摸索。这不,最近在适配Android Q时,发现了一个源码造成的bug,并且这个bug是AndroidQ变更造成的。具体的问题描述如下: 解锁模式为password,在解锁页面输入5次错误密码,然后熄灭屏幕,等待30秒后,再进入解锁页面,此时输入框无法获...

2019-12-13 23:10:07

学徒浅析Android——Android 8.0 Lock解锁流程

解锁流程1、Android8.0的Lock解锁处理统一由LockPatternChecker.checkPassword实现,LockPatternChecker.checkPassword提供了两个回调接口,其中onEarlyMatched()处理验证成功,onChecked处理验证失败。2、密码验证成功后,立刻执行KeyguardSecurityCallback#dismiss(tru...

2019-03-26 22:46:12

学徒浅析Android——系统文字大小的适配

Android系统的文字设置变更会影响到应用页面的展示,一般的APP都是禁止跟随系统文字设置进行变化的。1、针对系统字体变更的应对方法:   (1)可以通过在AndroidMainfest.xml中配置configChange="fontScale"规避Activity生命周期的重启,当系统设置发生变更时,会引起当前应用的重启,声明周期变更为onDestroy()->onCreate()-&...

2018-07-01 10:41:45

学徒浅析Android——Android 8.0(O)后台服务的限制和变化

Android 最近几版的特色主要集中在省电和后台管理上,O的发布,对Service和Broadcast又近一步加强了管束。主要可概括为如下两点:      1、后台应用不被允许创建后台服务,必须通过JobScheduler或者Context.startForegroundService()进行创建      2、特定的隐式广播不再被允许启动,必须通过JobScheduler调用或者显式注

2018-07-01 10:19:58

学徒浅析Android——PreferenceActivity在Android 8.0和 7.0上细微变化

    日前在利用PrepertyActivity配置设置页面时,出现了一个IllegalArgumentException崩溃,这个崩溃只在8.0系统的手机上出现了,在7.0及以下的系统中不会出现,后来经过追根溯源,发现原因是Android8.0的API变更导致的,先把分析过程分享一下,希望能帮助到有同样问题的同学,当时触发的崩溃如下:java.lang.RuntimeException:...

2018-06-24 13:10:58

学徒浅析Android——从setContentView()角度分析View、Window、Activity三者关系

本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布参考码源:Android Oreo 8.0.0工具:Layout Inspector 我们在Activity的onCreate()方法中设置setContentView(),但是一直不明白其中的原理,正好公司在开展技术交流活动,分到的课题是View、Activity、Window的关系,借这个机会梳理一番。Activity生命周期的...

2018-04-06 23:34:52

学徒浅析Android——getDrawingCache()返回为NULL的原因

本篇文章已授权微信公众号 guolin_blog(郭霖)独家发布             在针对WebView使用getDrawingCache()进行当前屏幕截图时,发现返回的是NULL,同时在控制台看到logcat提示了一条异常信息,意思就是当前视图大小已经超过了缓存容量。内容如下:02-01 14:21:33.512 3461-3461/com.example.sample.job W/Vi...

2018-02-08 23:33:49

学徒浅析Android开发——windows64下FFmpeg编译问题汇总

最近在编译FFmpeg的过程中着实遇到了一堆问题,FFmpeg其实更适合在LINUX环境下进行开发和封装,因为它所依赖的编译工具和功能扩展插件在LINUX环境下更容易配置。而自己是在windows64环境下进行的编译工作,着实给自己找了不少事干。下面分享下自己在windows64环境下FFmpeg封装过程中遇到的编译失败问题,以供交流。先说明一下我的编译环境配置:系统环境:windows7

2018-01-25 18:51:08

学徒浅析Android——Android原生下载机制针对0K大小文件下载异常的分析

本篇文章已授权微信公众号 guolin_blog(郭霖)独家发布 最近在进行一次测试用例中,发现测试手机在利用本地下载功能下载0K大小的文件时,进度条一直处于进度模糊状态中,虽然查看本地存储路径,发现文件已经存在,但是页面上并没有提示下载成功,此时只能对下载执行暂停或删除操作。最初只是怀疑是自身应用的问题,但是在试了自己的华为畅享5s(Android5.1)、联想S560(Androi

2017-12-10 21:21:54

学徒浅析Android——Android7.0(N)对于自定义证书和非CA机构证书的适配校验

针对Android N 证书校验规定的适配方案

2017-10-19 21:49:54

学徒浅析Android开发——通讯录实时监听的设计实现

本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布大家在使用微信的过程中,可以发现微信的通讯录可以和手机通讯录保持一致的增删变化,这点特性属于应用的易用性范畴,今天就来讲讲如何实现该功能。     通讯录涉及到的表统一集中在contacts2.db中。其路径如下: /data/data/com.android.providers.contacts/datab

2017-03-22 22:07:26

学徒浅析Android开发——SO文件的混淆

.so(SharedObject)作用等同于windows环境下的.dll(dynamic link library)文件,我们在引用第三方SDK时,也会遇到需要调用相应的.so文件的情况,.so文件本事更多的是集成公共处理方法,当然有事也会用来保存重要的数据信息。对于应用的编译与反编译过程中,本地混淆一直是有效的方法。对于.so文件,同样也适用于混淆,.so文件虽然在使用破解工具IDA打开后

2017-02-05 14:46:15

WebView与JavaScript交互的一种可行性方案

WebView提供的网页和本地交互方式十分简单:    setJavaScriptEnabled(true);addJavascriptInterface(Object obj, String interfaceName)PS1;一个自定义的接口名和一个用来JS调用的方法对象,就可以搭建一个JavaScript桥接接口。当然,简单就意味的着有漏洞,所以才有了后来的反射攻击PS2,and

2016-12-23 07:14:08

学徒浅析Android开发:杂谈——仿QQ列表左右滑动效果

本篇文章已授权微信公众号guolin_blog(郭霖)独家发布 ListView可以说是最常用的控件了,所谓在平凡中创建不平凡,各种listView的衍生版本层出不穷。在商业应用中,一个item上堆放的信息不能太多,item本身的作用在于提供给用户快速选择的权利,信息堆放太多,反而无法让用户快速决定,所以简洁明了才是真。但是对于一些在场景中必要的功能按键,就需要找到合适的放置位置,尤其是现

2016-07-08 23:20:41

学徒浅析Android开发:杂谈——WebView的url跳转时方法执行顺序

在实际项目开发中,我们用到WebView的场景,大多是在对接协议、第三方应用或网页时出现。对于页面加载,WebView没有自带等待效果。所以,需要我们去自定义各种带进度条的WebView,网上相关的例子也是不胜枚举,今天我们就来谈谈一条地址请求在WebView中的跳转问题:WebView中有两个工具类负责管理网页各种行为:WebChromeClient和WebViewClient。分别通过se

2016-07-08 23:07:09

查看更多

勋章 我的勋章
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享小兵
    分享小兵
    成功上传3个资源即可获取