Android开发
文章平均质量分 72
_H_JY
一个对新鲜事物后知后觉的年轻人...
展开
-
Android应用本地离线激活认证方案—so文件授权认证
一.需求场景在实际的开发工作过程中,我们经常会遇到过这样一个需求,就是客户要求我们的APP功能使用之前必须具备一定的密钥认证机制。现在是互联网时代,一般我们常规的做法都是建立起自己系统平台的用户体系,客户端通过用户名和密码去登录,以实现该需求。但是如果我们的APP目前不需要联网,没有自己的用户体系呢?换言之我们的APP需要进行离线认证使用,既然是离线认证,那意味着我们的认证过程必须存在于前端自己的项目之中,那就存在被破解的风险。众所周知,现在的反编译工具很多很强大,反编译一个未加固的APP仅仅只是一瞬间原创 2021-11-10 09:40:38 · 4896 阅读 · 0 评论 -
分享我的Android蓝牙开源作品—HBluetooth
大家好,好久没来发博客了。本篇将跟大家分享我在github上的一个开源项目,是关于安卓蓝牙开发的封装,包含蓝牙设备的搜寻、连接、通信,支持经典蓝牙和低功耗蓝牙,语言版本有Java和Kotlin两个版本。其实说起来,这个项目早在2018年的时候就已经编写过一版了,只不过由于当时工作比较繁忙,搁置了很长一段时间,后面又没有去理会。直到今年换工作,有事没事看看github账户,偶然看到有一个开发者给我提了第一个issue,惊喜万分,提醒我应该重新拾起这个项目了,然后就重新优化了一下,更新至Github,并准原创 2021-10-18 10:33:02 · 3482 阅读 · 6 评论 -
JetPack之WorkerManager使用
1.调用方法//JetPack组件 WorkManager//Gradle引入依赖:implementation "android.arch.work:work-runtime:1.0.0-alpha04"//优点:任务一定会被执行,即使应用被关闭。不同Worker可以链式顺序执行。//可传数据进WorkerData.Builder builder = new Data.Builder();builder.putString("name", "WorkManager");Data dat.原创 2021-07-09 15:19:41 · 480 阅读 · 0 评论 -
设置Android Studio开发无线调试
设置Android Studio开发无线调试1、从插件市场安装插件WIFI ADB ULTIMATE并重启Android Studio生效。这是右边框会增加一个选项,就是刚才安装的插件:2、保证手机/pad设备和电脑连接同一wifi,否则无法进行无线调试,切记。3、通过数据线连接设备,打开设备的5555端口,每次设备重启,需要重新打开设备的端口:adb tcpip 55554、如果不知道当前设备的ip地址,运行命令:adb shell ifconfig5、连.转载 2020-05-31 20:05:34 · 881 阅读 · 0 评论 -
Android事件传递机制
事件传递虽然算不上某个单独的知识点,但是在实际项目开发中肯定会碰到,如果不明白其中的原理,那在设计各种滑动效果时就会感到很困惑。关于事件的传递,我们可能会有以下疑问:事件是如何传递的事件是如何处理的自定义view的时候,事件也冲突了怎么解决带着这三个疑问,我们来总结一下事件传递机制是怎么回事。 一、事件分发的原理:1、事件是如何传递的:(1)首先由Activity分发,分发给根View,也就是De...转载 2018-05-21 23:26:31 · 158 阅读 · 0 评论 -
Android 安全访问机制(沙盒数据共享)
Android是一个多进程系统,在这个系统中,应用程序(或者系统的部分)会在自己的进程中运行。系统和应用之间的安全性通过Linux的facilities(工具,功能)在进程级别来强制实现的,比如会给应用程序分配user ID和Group ID。更细化的安全特性是通过"Permission"机制对特定的进程的特定的操作进行限制,而"per-URI permissions"可以对获取特定数据的acce转载 2017-10-16 11:09:45 · 2179 阅读 · 0 评论 -
Android授权登录新浪微博获取用户个人信息
今天我讲的是Android通过新浪微博授权登录获取用户信息,大家都知道,现在很多软件除了本地注册登录之外,还增加了第三方登录功能,最常见的是直接授权QQ等软件来登录应用而无需自行注册,其原理更多的是通过开放协议OAuth获取第三方用户信息来达到此目的。本篇讲的正式基于OAuth来获取新浪微博用户信息。一、准备工作我们都知道,无论是分享到新浪微博,还是获取新浪微博的用户信息,都离不开原创 2015-10-15 10:59:52 · 13602 阅读 · 7 评论 -
Android Studio下使用AIDL创建和使用远程service
好久没来更新博客了,今天心血来潮来写一篇关于如何在AS下结合AIDL创建和使用远程service。在此之前我先跟大家解释下什么是远程service?以及为什么要使用远程service?相信不管对于安卓新手还是老手而言,对于service并不感到陌生,所以这里就不跟讨论其基础概念和一些知识点了。所谓的远程service意思其实就是提供一个独立于某个app进程而创建的服务,这个服务可以提供给多个app原创 2016-07-05 18:34:26 · 3684 阅读 · 5 评论 -
Android中的搜索框(SearchView)的功能和用法
1、SearchView是搜索框组件,它可以让用户在文本框里输入文字,通过监听器取得用户的输入,当用户点击搜索时,监听器执行实际的搜索。2、SearchView组件的常用方法如下:①setIconifiedByDefault(boolean iconified) ===> 设置搜索框默认是否自动缩小为图标。②setOnQueryTextListener(SearchView转载 2015-09-14 11:40:49 · 12265 阅读 · 3 评论 -
复杂布局中点击编辑框EditText以外界面无法隐藏软键盘的解决方法
前面我写了一篇文章,题目为”如何将编辑框EditText置于系统软键盘之上及相关细节的实现“,并且在代码中介绍了使用复写onTouchEvent(MotionEvent event)方法来实现点击编辑框EditText以外界面无法隐藏软键盘的解决方法,但事实上,该方法并不总是有些,特别在复杂的布局中往往会失效,因此特给大家分享一个比较给力的方法,那就是添加如下代码: @Override原创 2015-09-10 16:58:29 · 754 阅读 · 0 评论 -
如何将编辑框EditText置于系统软键盘之上及相关细节的实现
最近在做类似与QQ空间和微信朋友圈评论界面的修改,顺便研究了下Android软键盘的一些使用方法,在网上收集了大量资料后自己进行了一些总结,并且通过亲测可用,希望能给广大读者带来用处。好了下面开始正题。为了让大家更容易看懂,我贴出了一个小例子,在这个例子中有主要的活动界面MainActivity,有主要用于监听软键盘显示与隐藏的KeyboardListenRelativeLay原创 2015-09-10 16:39:19 · 2893 阅读 · 0 评论 -
基于百度地图定位SDK实现定位
一、创建应用要使用百度地图的一些功能,比如定位功能的实现,就必须首先注册一个百度开发者帐号,然后到http://lbsyun.baidu.com/apiconsole/key创建应用,申请开发中在你的程序的AndroidManifest配置文件所需要填写的key;创建应用时首先填写好应用名称和应用类型,填写过程中最值得注意的就是安全码了,事实上在该填写项下面已经标明安全码的填写格式,那就是:数原创 2015-09-16 11:45:11 · 1158 阅读 · 0 评论 -
Android使用官方API分享内容到QQ和微信(非第三方集成)
最近在做分享功能,主要是实现QQ和微信分享,打算把自己实现过程跟大家分享一下,也是本人第一次发博客。好了,废话不多说,直接正题。我把各种分享封装到一个类ShareUtil中,打算通过调用这个类里面的方法来实现分享,不过在使用这个类之前,我们必须首先进行一系列配置和准备工作。一、注册官网帐号并登陆,审核应用并通过,下载签名工具获取你的应用的签名并填写到官方网站应用签名中1、在分享之前原创 2015-08-28 11:07:06 · 8820 阅读 · 8 评论 -
Android实现交错的GridView视图
相信大家都有看到过,在很多应用中都出现过安卓自带的GridView控件实现的界面,界面中显示的更多的是规则排列的图或图文并排,但是也存在部分应用界面中显示无规则的图片或图文。这到底是怎么实现的呢?其实很简单,利用开源控件StaggeredGridView-master(点此下载)就能实现了。下面我们就来介绍这个控件的基本用法,其实跟安卓开发工具自带的GridView的使用原理基本是一样的。原创 2015-10-20 14:11:26 · 1232 阅读 · 0 评论 -
Android之json数据的解析方法
本篇跟大家介绍的是Android Json数据的几种解析方法,大家都知道,我们在向服务器发送请求获取JSON字符串之后常常要进行信息的提取,这实际上就是解析的过程。解析json数据有很多中方法,如果你打算将json数据解析并封装到一个类中,那么我建议你使用Google的提供解析工具包,调用fromJson将json数据解析成对象,或者toJson将一个对象解析为一个字符串,使用起来简单暴力,非常方原创 2015-09-12 14:21:25 · 1045 阅读 · 0 评论 -
基于Google Json工具包解析数据
大家好,前面我写了一篇文章,标题为《Android之json数据的解析方法》,文章讲述的是使用安卓开发工具自带的工具类来解析json数据,不过在实际开发中,由于考虑到效率问题,更多的人会选择其它更为强大的解析工具,比如Google的json解析工具。本篇正是基于Google Json工具包来讲解如何使用它来解析数据,调用toJson方法可以将其它数据类型转换成json数据类型,或者调用from原创 2015-10-22 15:49:30 · 2114 阅读 · 0 评论 -
Android利用HTTP协议加载网络图片
给出一张图片的网址,我们怎么把这张图片加载到我们的ImageView控件显示呢?由于采用网络请求,我们必须在AndroidManifest.xml添加权限由于是网络请求数据,我们必须在开辟一条线程来完成数据请求,得到数据后最终回到主线程刷新UI显示图片即可。好了,该说的已经说了,下面直接贴代码了。1、MainActivity.javaimport java.io.IOE原创 2015-09-16 14:31:34 · 2810 阅读 · 0 评论 -
Android viewpager+fragment实现动态加载碎片(fragment重复使用)
距离上次发博客好像已经至少有两个月的时间了,不禁感叹时间过得真快,也是因为项目一直在忙,所以没来发博客,今天有闲情就来一发。好了,废话不多说,今天讲的是fragment复用的问题,提到碎片,相信大家都不陌生,fragment寄宿于Activity,依activity之存而存,依其销毁而销毁。今天我们大概要实现什么样的效果呢,那就是一个fragment重复使用,通过点击界面上方的导航栏不同的标题原创 2015-12-28 23:51:16 · 13691 阅读 · 1 评论 -
自定义类似于ViewPager的可上下滑动切换效果的视图
今天给大家分享一个使用Scroller滚动类实现的控件,我们知道,viewpager实现的是一种左右切换的效果,使用scroller+事件分发来实现viewpager本身并不是一件特别难的事,因为viewpager其内部的实现原理就是这样。为了跟大家更好地分享下scroller的用法,我实现了一个可以上下切换的效果。下面直接贴该类代码:1.VDViewPager.classimport a原创 2016-03-03 10:58:37 · 3931 阅读 · 0 评论 -
android 输入框EditText禁止输入Emoji表情符
通过添加EditText的addTextChangedListener()监听来过滤Emoji表情:onTextChanged()beforeTextChanged()使用方法在开发中可能多处会用到过滤Emoji表情符,为了方便使用自定义EditText来实现:import android.widget.EditText;import android.wi转载 2015-09-11 09:31:37 · 5588 阅读 · 1 评论