- 博客(114)
- 资源 (57)
- 问答 (6)
- 收藏
- 关注

原创 我的新书《Android App开发从入门到精通》终于出版啦
前言经过了两年多终于完成了这本书,2016年9月份开始写的,到今天为止2年零2个月,本书的内容大部分是去年完成的,看过我去年总结的读者可能知道,去年事情很多太忙了,导致本命年这本书没有上架(有点小小的遗憾)。工作之余喜欢写写技术文章,对自己的技术做一个总结同时也让后来者站在我的肩膀上,之前一直在优快云发表文章,也是优快云博客专家,单篇文章上万阅读量,在这里感谢这个平台,让我的文章被更多人看...
2018-11-14 12:42:21
22562
34

原创 Android学习路线总结,绝对干货
一、前言不知不觉自己已经做了几年开发了,由记得刚出来工作的时候感觉自己能牛逼,现在回想起来感觉好无知。懂的越多的时候你才会发现懂的越少。如果你的知识是一个圆,当你的圆越大时,圆外面的世界也就越大。最近看到很多Android新手问Android学习路线,学习方法啊,如何入门啊,所以我从网上找了一些资料,然后以我的工作经验给大家总结一下,让你们少走弯路,提取一些工作中经常用到的技术。二、学习知识汇总1、
2016-04-26 18:13:52
35034
2
原创 鸿蒙(HarmonyOS) - 实现省市区三级联动
电商App在填写收货地址时,需要用户选择省市区,今天我们使用鸿蒙自带的TextPicker组件实现省市区三级联动。
2024-09-25 10:11:17
863
2
原创 鸿蒙系统(HarmonyOS)全局弹窗实现
全局弹窗是鸿蒙在API 12增加的,PromptAction对象增加了openCustomDialog方法。
2024-09-10 08:50:58
866
原创 鸿蒙(HarmonyOS)学习路线总结
以上的内容都简单过了一遍,去开发者学堂把相关基础视频看一遍,就能做项目了,边做边学如果您想第一时间看我的后期文章,扫码关注公众号安辉编程笔记 - 开发技术分享扫描二维码加关注。
2024-09-05 17:16:29
3046
原创 鸿蒙(HarmonyOS)常见的三种弹窗方式
最近有一个想法,做一个针对鸿蒙官方API的工具箱项目,介绍常用的控件,以及在项目中如何使用,今天介绍Harmony中如何实现弹窗功能
2024-08-31 08:42:00
2542
1
原创 鸿蒙(HarmonyOS)实现隐私政策弹窗
在实现用户协议弹窗时,通常我们会想到使用系统自定义弹窗,并在弹窗中点击跳转到Web页面。但在HarmonyOS中,由于系统弹窗的显示优先级高于其他组件,即使跳转到Web页面,弹窗依然会显示在最上层。为了解决这个问题,我们可以自定义一个组件来模拟弹窗,这样当跳转到Web页面时,Web内容会覆盖这个模拟的弹窗。首先,我们来看程序的入口代码。最外层使用了一个RelativeContainer容器组件,通过showAgreePrivacyPolicy变量控制隐私政策弹窗的显示状态。
2024-08-10 07:33:45
1021
原创 鸿蒙(Harmony) NEXT - AlphabetIndexer实现联系人字母索引
使用AlphabetIndexer实现联系人字母索引,AlphabetIndexer是官方封装好的组件。
2024-08-08 11:46:07
523
原创 第一个鸿蒙程序Hello Word
DevEco Studio介绍HUAWEI DevEco Studio(以下简称DevEco Studio)是基于IntelliJ IDEA Community开源版本打造,面向华为终端全场景多设备的一站式集成开发环境(IDE),为开发者提供工程模板创建、开发、编译、调试、发布等E2E的HarmonyOS应用开发服务。通过使用DevEco Studio,开发者可以更高效的开发具备HarmonyOS分布式能力的应用,进而提升创新效率。下载与安装软件登录HarmonysOS应用开发门户,点击右上角注册按钮
2021-03-13 03:10:27
818
原创 分享一个自己的开源项目ShapeView
在家办公都快1个月了,人都要疯了。希望疫情早点过去,加油武汉,加油中国!!!今天给大家分享一个我自己封装的小项目,我们公司的产品也在使用,就是使用自定义属性替代项目中的shape文件,首先看效果图:从效果图中可以看出,覆盖了App中常用的按钮效果,弧度、按压效果、标签选择、按钮渐变色等。如果用shape.xml实现的话,项目drawable目录下如图所示:你会发现需要写很多shape文件...
2020-03-05 00:13:52
700
原创 Glide开源库的使用
关于GlideGlide是一款快速高效的Android图像加载库,注重于平滑的滚动。Glide提供了易用的API,高性能、可扩展的图片解码管道(decode pipeline),以及自动的资源池技术。Glide 支持拉取,解码和展示视频快照,图片,和GIF动画。Glide默认使用的是HttpUrlConnection类下载图片,但是也提供了与Google Volley和Square OkHt...
2018-10-28 15:57:51
1298
原创 zxing开源库的基本使用
如果你的项目中有模块跟二维码相关的话,那你一定听过或者用过大名鼎鼎的zxing开源库。什么是zxing?ZXing是一个开源的,用Java实现的多种格式的1D/2D条码图像处理库,它包含了联系到其他语言的端口。zxing可以实现使用手机的内置的摄像头完成条形码的扫描及解码。本篇文章就来学习zxing的基本使用,学习了以下几个内容就能满足大部分项目中的二维码相关需求:通过摄像头扫描二维码图...
2018-10-25 20:39:36
18265
9
原创 Android 9.0更新
北京时间2018年8月7日上午,Google 发布了 Android 9.0 操作系统。并宣布系统版本 Android P 被正式命名为代号“Pie”。Android 9.0 利用人工智能技术,让手机变得更智能、更快,并且还可以随着用户的使用习惯进行调整。利用 Wi-Fi RTT 进行室内定位Android 9 添加了对 IEEE 802.11mc Wi-Fi 协议(也称为 Wi-Fi Ro...
2018-10-24 20:26:59
2845
原创 8.0通知栏新增通知渠道
从Android 8.0(API级别26)开始,所有通知必须要分配一个渠道,对于每个渠道,可以单独设置视觉和听觉行为。然后用户可以在设置中修改这些设置,根据应用程序来决定哪些通知可以显示或者隐藏。创建通知渠道之后,程序无法修改通知行为,创建之后只有用户可以修改,程序只能修改渠道名称跟渠道描述。我们可以为一个应用程序创建多个通知渠道,不同的通知类型用不同的渠道。例如重要通知用一个渠道,可以为...
2018-03-30 14:30:16
6030
1
原创 封装好的图片滑动框架(AndroidImageSlider)
前言广告轮播条的重要性不言而喻。在很多类型app中出场率都很高。今天给大家介绍一个轮播图开源项目,这个项目把轮播图需要的ViewPager跟计时器做了封装,使用极其方便,支持gradle在线依赖。还封装了几种图片滑动动画。无图无真相:有10多种滑动动画,跟两种滚动状态。能满足大部分需求。如何使用首先在线依赖三个库compile 'com.squareup.picasso:picasso:2.3.2'
2017-09-29 00:21:23
1275
原创 Android调用微信登陆、分享、支付(第二版本)
前言大部分的app都有接入第三方sdk的需求。例如第三方登录需要接入微信、QQ、微博。第三方支付需要接入微信、支付宝、银联。这些我都有使用过,都有使用过他们的sdk,感觉最麻烦的就是微信,不能直接调试,得用正式的签名进行签名才能调试。还有他们官方的demo也是跑不起来的,因为没有签名文件。需要注意的地方也很多。代码实现微信sdk现在支持Android Studio在线引用了,之前都是添加jar的方法
2017-09-16 16:01:05
9793
17
原创 Android WebView基本使用
WebView介绍Android WebView在Android平台上是一个特殊的View, 基于webkit引擎、展现web页面的控件,这个类可以被用来在你的app中仅仅显示一张在线的网页,还可以用来开发浏览器。WebView内部实现是采用渲染引擎来展示view的内容,提供网页前进后退,网页放大,缩小,搜索。Android的Webview在低版本和高版本采用了不同的webkit版本内核,4.4后直
2017-09-11 04:51:31
178798
19
原创 调用Android自带浏览器打开网页
在Android中可以调用自带的浏览器,或者指定一个浏览器来打开一个链接。只需要传入一个uri,可以是链接地址。启动android默认浏览器在Android程序中我们可以通过发送隐式Intent来启动系统默认的浏览器。如果手机本身安装了多个浏览器而又没有设置默认浏览器的话,系统将让用户选择使用哪个浏览器来打开连接。Uri uri = Uri.parse("https://www.baidu.com"
2017-09-11 04:44:08
55627
1
原创 Android Studio发布项目到jcenter,一行代码引入Module
前面我们使用自己封装的okhttp项目时候,只需要app/build.gradle文件中加一行代码就能使用项目。compile 'com.ansen.http:okhttpencapsulation:1.0.1'那是因为我之前就把封装的module提交到了jcenter服务器。所以android sutdio把从jcenter服务器把类库下载下来。提交项目到jcenter当我们做好一个轮子的时候,或
2017-09-08 17:37:55
4006
3
原创 FileProvider解决FileUriExposedException
FileUriExposedException在给app做版本升级的时候,先从服务器下载新版本的apk文件到sdcard路径,然后调用安装apk的代码,一般写法如下:private void openAPK(String fileSavePath){ File file=new File(fileSavePath); Intent intent = new Intent(Intent
2017-09-07 10:53:31
2989
2
原创 Android检查更新下载安装
检查更新是任何app都会用到功能,任何一个app都不可能第一个版本就能把所有的需求都能实现,通过不断的挖掘需求迭代才能使app变的越来越好。检查更新自动下载安装分以下几个步骤:请求服务器判断是否有最新版本(通过versionCode)如果有最新版本,就把最新的apk文件下载到本地下载完成之后给系统发起一个安装的Intent。打开项目下面app下面build.gradle文件,我们可以看到里面
2017-09-05 15:32:00
43392
7
原创 OkHttp封装之后使用
代码都封装好了,上层Activity如何调用呢?1.依赖如果是android studio开发支持在线依赖(我已经把项目添加到jcenter上):compile 'com.ansen.http:okhttpencapsulation:1.0.1'如果是eclipse那你先把ide切换到android studio吧。。。不闲麻烦的话也可以把源码module的源码copy出来,反正也就几个类。2.初始
2017-08-31 18:30:48
5467
1
原创 OkHttp封装
### 前言 上个知识点介绍了OKHttp的基本使用,在Activity中写了大量访问网络的代码,这种代码写起来很无聊,并且对技术没什么提升。在真实的企业开发中,肯定是把这些代码封装起来,做一个库,给Activity调用。封装之前我们需要考虑以下这些问题: - 封装基本的公共方法给外部调用。get请求,Post请求,PostFile - 官方建议OkHttpClient实例只new一次,那我们
2017-08-31 18:21:36
7062
1
原创 OkHttp基本使用
OkHttp介绍Android系统提供了两种HTTP通信类,HttpURLConnection和HttpClient,HttpURLConnection相对来说比HttpClient难用,google自从2.3版本之后一直推荐使用HttpURLConnection,并且在6.0版本的sdk中直接删掉了HttpClient类。但是, 上面两个类库和OkHttp比起来就弱爆了, 因为OkHttp不仅具有
2017-06-09 15:51:24
4613
原创 Handle的原理(Looper、Handler、Message三者关系)
介绍前面的内容对Handler做了介绍,也讲解了如何使用handler,但是我们并不知道他的实现原理。本文从源码的角度来分析如何实现的。首先我们得知道Handler,Looper,Message Queue三者之间的关系 - Handler封装了消息的发送,也负责接收消。内部会跟Looper关联。 - Looper 消息封装的载,内部包含了MessageQueue,负责从MessageQueue
2017-05-20 16:09:54
10963
5
原创 如何使用Handler
什么是Handler?Handler可以发送和处理消息对象或Runnable对象,这些消息对象和Runnable对象与一个线程相关联。每个Handler的实例都关联了一个线程和线程的消息队列。当创建了一个Handler对象时,一个线程或消息队列同时也被创建,该Handler对象将发送和处理这些消息或Runnable对象。handler类有两种主要用途:执行Runnable对象,还可以设置延迟。两
2017-05-18 20:24:17
4690
原创 AndroidN多窗口支持
Android N 可以同时显示多个应用窗口。 在手机上,两个应用可以在“分屏”模式中左右并排或上下并排显示。例如,用户可以 在上面窗口聊QQ,下面窗口发送短信。如图所示,两个app在分屏模式中上下显示: 如何让你的app支持多窗口?如果你的app支持Adnroid N,在AndroidManifest.xml文件中对 或 节点设置android:resizeableActivity就能启用或者
2017-05-15 20:27:29
2837
原创 gson解析json
json介绍JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于 ECMAScript 规范的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。现在大部分APP都使用json给前端返回数据。gs
2017-05-12 17:33:14
5274
原创 Android6.0运行时权限
从 Android 6.0(API 级别 23)开始,用户在使用软件时向其授予权限,而不是在安装时授权。这个方法可以简化安装过程,用户在安装或者更新软件时不需要授予权限。它还能让用户对应用的功能进行控制。例如一个摄影应用,他使用摄像头权限是正常的,但是用户无法理解这个应用要读取联系人信息。系统权限分为两类:正常权限跟危险权限正常权限不会直接给用户隐私权带来风险。在AndroidManifest.x
2017-04-28 16:08:36
3655
原创 Broadcast Receiver基本使用
Broadcast Receiver介绍Broadcast Receiver翻译成中文叫“广播接收器”,所以它的作用是用来接收发送过来的广播的。Android应用程序可以发送或接收来自Android系统和其他Android应用程序的广播消息,类似于发布订阅设计模式。当有兴趣的事件发生时发送这些广播。例如,Android系统在各种系统事件发生时发送广播,例如当系统启动或设备开始充电时。应用程序也可以发
2017-02-06 14:52:48
3373
原创 RecyclerView使用大全
RecylerView介绍RecylerView是support-v7包中的新组件,是一个强大的滑动组件,与经典的ListView相比,同样拥有item回收复用的功能,这一点从它的名字recylerview即回收view也可以看出。官方对于它的介绍则是:RecyclerView 是 ListView 的升级版本,更加先进和灵活。RecyclerView通过设置LayoutManager,ItemDe
2017-01-05 21:12:45
3699
1
原创 带你实现开发者头条APP(五)--RecyclerView下拉刷新上拉加载
转载请注明出处:http://blog.youkuaiyun.com/lowprofile_coding/article/details/51321896一 、前言最近实在太忙,一个多礼拜没有更新文章了,于是今晚加班加点把demo写出来,现在都12点了才开始写文章。1.我们的目标把RecyclerView下拉刷新上拉加载更多加入到我们的开发者头条APP中。2.效果图3.实现步骤找一个带上拉刷新下载加载更多的R
2016-05-05 12:37:06
14567
8
原创 带你实现开发者头条APP(四)---首页优化(加入design包)
一 、前言上次模仿开发者头条首页实现了一个版本,给345大神,我的产品经理一看,又被鄙视了一把,说还在用老的技术,于是乎这三天把整个design包研究了一遍,然后把首页的代码几乎重写了一遍。。。。顺便用上了android studio,方便大家导入。。。效果图如下(window下的录屏没有mac的好): 从gif动态效果图中我们可以看出,跟上次没有啥变化,唯一变化的就是列表上拉的时候会隐藏标题
2016-04-24 22:33:45
7295
2
原创 带你实现开发者头条APP(三) 首页实现
一.前言今天实现开发者头条APP的首页。是本系列的第三篇文章,效果图如下: 从gif动态效果图中我们可以看出,最外层有三个tab(精选,订阅,发现),在精选界面顶部有一个轮播的图片广告,广告下面是一个精选文章列表。二.外层三个tab实现我这里用Viewpager实现的,可以左右滑动,灵活的隐藏下面fragment的显示隐藏。1.布局文件布局文件比较简单,上面包涵三个TextView的Relativ
2016-04-19 22:11:46
10702
1
原创 带你实现开发者头条(二) 实现左滑菜单
今年开始模仿开发者头条的侧滑菜单,是本系列第二篇文章,相信大家已经看到很多app使用这种侧滑。今天我来教大家用android自带DrawerLayout控件实现。DrawerLayout是SupportLibrary包中实现了侧滑菜单效果的控件,可以说DrawerLayout是因为第三方控件如MenuDrawer等的出现之后,google借鉴而出现的产物。DrawerLayout分为侧边菜单和主内容
2016-04-19 00:46:27
5497
2
原创 带你实现开发者头条(一) 启动页实现
对于很多初学者或者刚工作的Android新手来说,我们的项目经验还停留在做demo的阶段,有没有一种很low的感觉,并且当你真正上手做大项目的时候又不知道把自己学到的东西用上去。。有一种自己家里有座金山却不知道可以用来换钱换吃的。经过345大神的提醒,说觉得开发者头条这个app不错,用到了很多android中常用的技术,叫我写一系列的文章,去模仿一个商业的app。于是我去下载了一个开发者头条app(
2016-04-16 21:21:26
7915
1
TextView+Fragment实现底部导航栏
2015-09-08
Android获取手机所有文件存储路径
2015-09-07
xprivacy改IMEI工具
2015-09-06
android反编译工具
2015-09-03
微信登陆,分享,支付的jar包
2015-08-29
app引导页(背景图片切换加各个页面动画效果)
2015-08-27
Tomcat8.0(mac操作系统)
2015-08-25
ShareSDK短信接入Demo
2015-08-23
PopupWindow底部弹出
2015-08-19
Android播放gif动画,增加屏幕掉金币效果
2015-08-19
android帧动画,移动位置,缩放,改变透明度
2015-08-19
Android仿qq长按删除功能效果
2015-08-04
Android系统分享功能实现
2015-07-20
瀑布流StaggeredGridView 下拉刷新
2015-07-13
Android使用TextureView播放视频
2015-07-08
ViewPager+RadioGroup标题栏切换效果
2015-07-02
实现本地音乐选择,播放,带可拖动进度条
2015-05-18
android通过NFC读取公交卡的余额和交易记录
2016-12-19
带你实现开发者头条APP(五)--RecyclerView下拉刷新上拉加载
2016-05-05
带你实现开发者头条APP(四)---首页优化(加入design包)
2016-04-24
带你实现开发者头条APP(三) 首页实现
2016-04-19
带你实现开发者头条(二) 实现左滑菜单
2016-04-19
带你实现开发者头条(一) 启动页实现
2016-04-16
flv格式分离合成
2016-02-22
flv格式编码解码
2016-02-19
myeclise 2015/2014破解jar包
2015-11-21
Android接入百度自动更新Demo
2015-11-07
Android自定义spinner下拉框实现的实现
2015-11-04
android标题栏上面弹出提示框(二) PopupWindow实现,带动画效果(第二版)
2015-11-02
android标题栏上面弹出提示框(二) PopupWindow实现,带动画效果
2015-10-27
android View下弹出提示框,并且增加弹出隐藏View动画效果.
2015-10-20
View下弹出提示框,并且增加弹出隐藏View动画效果.
2015-10-20
android模仿58筛选下拉框(PopupWindow实现)
2015-10-09
EventBus实现activity跟fragment交互数据
2015-09-22
Android sendevent/getevent 用法
2015-09-13
TextView加Fragment实现底部导航栏 Fragment里面嵌套ViewPager
2015-09-09
ListView添加header header是一个Webview谁弄过吗?
2017-08-14
Spring aop拦截Conreoller
2017-03-03
Android Studio运行问题
2016-01-07
genymotion模拟器如何支持arm so文件
2015-02-02
百度sdk定位如何设置超时
2014-11-26
ksoap访问webservice出现SocketException
2014-11-19
TA创建的收藏夹 TA关注的收藏夹
TA关注的人