
android
文章平均质量分 61
zy9011
java开发工程师
展开
-
QuickContactBadge和AsyncQueryHandler实现联系人列表完美实现
我也是醉了把这编博客写了2遍,难道这就是程序员的执着吗原创 2015-04-29 10:32:29 · 5452 阅读 · 0 评论 -
安卓实战开发之JNI从小白到伪老白深入了解JNI动态注册native方法及JNI数据使用
前言或许你知道了jni的简单调用,其实不算什么百度谷歌一大把,虽然这些jni绝大多数情况下都不会让我们安卓工程师来弄,毕竟还是有点难,但是我们还是得打破砂锅知道为什么这样干吧,至少也让我们知道调用流程和数据类型以及处理方法,或许你会有不一样的发现。 其实总的来说从java的角度来看.h文件就是java中的interface(插座),然后.c/.cpp文件呢就是实现类罢了,然后数据类型和java还原创 2016-07-23 19:06:41 · 5419 阅读 · 1 评论 -
安卓实战开发之把arr替换为library给eclipse使用(菜鸟学习)
前言我特么也是醉了,公司硬是使用eclipse开发安卓项目(为了给技术老大检查代码,我平时开发都是android studio),然后呢公司有需求说是要集成杉德渠道系统,果不其然客户给的是android studio的项目demo,我们的技术老大呢问我这什么工程,我笑了(毕竟老大不是安卓开发),但是项目里面是arr而不是以前的jar或者so库,所以呢的手动转一下。具体操作aar是Google为And原创 2016-07-04 16:03:27 · 5539 阅读 · 2 评论 -
安卓实战开发之SQLite从简单使用crud
前言最近项目忙,然后呢很久没有更新博客了,react-native也是没有时间学习,然后项目里面用到了数据持久化(数据存储),Android系统中主要提供了三种数据持久化方式:文件存储、SharedPreference存储、数据库存储。说实在的毕竟app这种轻量级的使用数据库还是不多,然后呢要使用数据库也是在特定场合,这也导致了很多的移动端开发(对数据库操作不多)对数据库使用不太熟练。原创 2016-06-19 15:59:17 · 8135 阅读 · 0 评论 -
Android图片处理之Glide使用大全
Android Glide是一个开源的图片加载和缓存处理的第三方框架。和Android的Picasso库类似,个人感觉比Android Picasso好用。Android Glide使自身内部已经实现了缓存策略,使得开发者摆脱Android图片加载的琐碎事务,专注逻辑业务的代码。Android Glide使用便利,短短几行简单明晰的代码,即可完成大多数图片从网络(或者本地)加载、显示的功能需求。原创 2016-01-27 20:10:02 · 45831 阅读 · 7 评论 -
安卓手把手教你实现集成支付宝支付功能
项目需要,需要在客户端集成支付宝接口。第一次集成,过程还是挺简单的,不过由于支付宝官方文档写的不够清晰,也是走了一些弯路,下面把过程写出来分享给大家。一、申请移动支付权限首先登录【支付宝开放平台】http原创 2015-11-17 11:52:27 · 4665 阅读 · 3 评论 -
安卓实战开发之JNI再深入了解
JNI重新认识头文件:1.头文件中存放的是对某个库中所定义的函数、宏(define)、类型、全局变量等进行声明,它类似于一份仓库清单。若用户程序中需要使用某个库中的函数,则只需要将该库所对应的头文件include到程序中即可。2.头文件中定义的是库中所有函数的函数原型。而函数的具体实现则是在库文件中。3.在连接器连接程序时,会依据用户程序中导入的头文件,将对应的库函数导入到程序中。头文件以.h为后缀原创 2016-08-06 11:38:51 · 2777 阅读 · 0 评论 -
android 打包上线忘记password 和 alias在有 签名文件的情况下如何找回
哈哈,这种需求我也是醉了。 今天有个搞ios的朋友(以前公司同事,现在是Leader)问我他们公司安卓要做版本升级,然后签名文件有但是password 和 alias忘记了,总不能重新搞个签名文件吧,密码试了一大堆无济于事,我听后特么感觉想笑,但是真出现这样的问题特么也是尴尬。看下截图:为了保证以后特么出现这种情况,我个人还是很乐意操作的,蛋碎一地的事情经常发生,哈哈实际操作下吧。步骤一:准原创 2016-08-17 15:12:59 · 19572 阅读 · 9 评论 -
自己动手做一个adb的wifi连接及adb命令的apk
前言估计搞安卓开发的小伙伴们都放弃了eclipse的开发转战android studio了吧,现在gradle都3.0 buiild都24.0.2了以后 都不再支持2.2及以下的版本了。eclipse的同学快上车。 上面的都不是重点,每当你大清早起来去公司上班,然后打开电脑发现你的usb线没有带,作为一个安卓程序员的你有点尴尬了。然后你果断的给android studio装上ADB WIFI插原创 2016-08-21 12:34:02 · 14375 阅读 · 2 评论 -
安卓实践开发之MVP一步步实现到高级封装
在上家干了快2年辞职后在家休息了快一个月了,说实在的不上班的感觉爽(睡觉睡到自然醒,游戏玩到手抽筋)。哈哈,又是快到一年过中秋的时候了,好久没有更新博客了,今天顺便撸一篇。前言话说MVP的模式已经问世好几年了,为什么很多公司还是不愿意接受呢?说实在的我就还是喜欢自己的mvc,不喜欢看见mvp庞大的架构,所以前公司的项目呢也不曾使用过mvp(同事也不接受这种模式),毕竟项目架构不是特别复杂的话使用mv原创 2016-09-12 16:51:27 · 17473 阅读 · 11 评论 -
安卓实战开发之CardView的selector及GrideView的item按下状态保留selector(state_activated)的实现
android的selector对于android开发者而言再熟悉不过了,只要定义一个drawable目录下定义一个selector的xml文件,在布局文件中background引用这个xml文件或者在代码中setBackgroundDrawable的时候使用此xml就可以实现控件按下或有焦点或激活状态等不同状态的效果。你真的对selector的使用全了解吗?前言项目中确实用到了像多个标签,然后选中原创 2016-07-03 17:03:34 · 10082 阅读 · 0 评论 -
安卓实战中防止Button的频繁点击多次执行点击事件和点击切换文字
哈哈,今天来写两种button在安卓开发实战的对应效果处理,也是对button的点击事件触发过程的处理。 开发实战中button事件处理3种情况:情况一:button点击触发倒计时情况二:button频繁点击(特别是触发网络请求),本人公司是金融公司很容易产生两笔交易的情况。情况三:button点击时不断轮流切换文字 看效果: 情况一:button触发倒计时请移步我的:频繁点击 安卓原创 2016-05-21 22:17:55 · 6939 阅读 · 0 评论 -
安卓用QuickContactBadge和AsyncQueryHandler实现联系人列表的完美实现
写个博客真的要花费很多的时间,但是还是学到了很多的东西,这是一个联系人列表的demo原创 2015-04-28 14:01:46 · 1607 阅读 · 0 评论 -
安卓Handle的深入剖析和使用
这是一个关于handle的剖析,里面详细的解释了handle的机制,使用就稍微介绍了原创 2015-04-25 19:27:52 · 3707 阅读 · 0 评论 -
安卓使用javascriptApi快速开发高德地图
由于目前某些安卓app的开发并不需要对地图的开发很深入,所以高德地图也推出了地图快速开发组件,个人觉得其实还是蛮好的,能够很好的实现app的某些功能,如果你的app并不需要地图的覆盖物这些功能的话,那么我建议你使用快速开发组件。请戳这个地址http://lbs.amap.com/api/lightmap/guide-2/summary/申请key地图组件是基于HTML5实现的轻应用产品,专门为原创 2015-04-08 11:07:19 · 3491 阅读 · 4 评论 -
安卓开发之科大讯飞的语音合成和语音识别初实践
好久没有更新博客了,一个月又差不多过完了,公司的项目又被搁浅了,然后天天去客户公司无所事事,光看别人的代码最坑的是那套代码还没有注释,现在我是严重鄙视那些不写注释的程序狗,然后项目还跑不起来,以前也没有做过金融类的的项目,里面全都是一些报文格式,然后还没有需求文档,真的是醉了,刚好呢现在公司也不大管我们了,不注重研发的公司就是坑。。。。。。今天呢随便来用下科大讯飞的语音功能,代码也非常的简单,原创 2015-01-19 16:09:19 · 5917 阅读 · 4 评论 -
安卓开发过程中出现一些错误的总结一
安卓开发中遇到的一些问题的总结,希望能够给别人带来一些帮助原创 2014-12-30 10:20:48 · 1350 阅读 · 0 评论 -
安卓为你打造gifView轻松播动画
很久没有写东西了,手有点生疏了,项目中有可能用到gif图片的话,直接拿去用就好了,懒得多说自己去看效果 main.xmlhttp://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"原创 2014-12-29 17:43:32 · 866 阅读 · 0 评论 -
玩转安卓带logo的二维码
好久没有写博客了,快元旦了公司的事情也不是很多,刚好和朋友一起出去玩玩,朋友是搞php的说到了每天在公司都是搞些什么二维码和微信支付的相关东西,因为上班的时间不忙,所以随便来搞下。二维码(Quick Response Code),又称二维条码,它是用特定的几何图形按一定规律在平面(二维方向)上分布的黑白相间的图形,是所有信息数据的一把钥匙。在现代商业活动中,如果一个产品是不能通过二维码来进行访原创 2014-12-29 14:58:01 · 1179 阅读 · 0 评论 -
安卓开发之SearchView的实践使用
SearchView是android中一个搜索框组件,它不是一个单独的view,而是一个LinearLayout布局,包括表示Search图标和清除图标等其它图标的imageView、具有下拉建议列表的AutoCompleteTextView等,原创 2014-10-03 19:54:07 · 3397 阅读 · 2 评论 -
仿qq的listView 滑动删除
国庆没有事做,第一次写博客,搞安卓那么久了一直都是学习别人的原创 2014-10-01 22:18:35 · 1127 阅读 · 0 评论 -
高仿淘宝购物车分分钟让你集成
前言做商城类电商app购物车确实一直是一个难点,为什么难呢? 主要原因呢是他里面的逻辑复杂,然后 百度的资源好像都不太理想,好多就是一个简单的listView来实现根本就达不到开发的需求。然后 一般都涉及到了店铺概念,就不再是一个简单listView能解决 的,如果用2个listView来嵌套的话涉及到批量操作和商品的勾选以及单个商品的或整个店铺商品的操作,那样逻辑变复杂了,然后动不动要用map原创 2016-03-08 09:36:16 · 22217 阅读 · 40 评论 -
安卓IPC之aidl使用(二)---aidl本地实现
一直都以为aidl必须写一个服务端是吧,那样岂不是有时候需求怎么实现,如果app的service和client属于同一app,那样实现是不是更好的满足我们的需求呢。 本例子我们实现一个很简单的例子:实现2个数相加// ILocal.aidlpackage com.losileeya.localaidl;// Declare any non-default types here with imp原创 2016-09-04 17:16:45 · 1171 阅读 · 0 评论 -
安卓IPC之aidl使用(一)--aidl常见使用
在android上有很多跨进程的通讯方法例如aidl,messenger,ContentProvider,BroadCast,Socket等等,安卓进程间通信(IPC)那肯定要谈到AIDL。你知道你需要进程间通信、需要AIDL(以及Binder),那么可以默认你对这些概念已经有了一些了解,你(大致)知道它们是什么,它们有什么用,所以为了节约大家的眼力和时间。AIDL简单介绍 AIDL:Andr原创 2016-09-04 16:45:47 · 2719 阅读 · 0 评论 -
Fragment 使用hide和show,使用onHiddenChanged代替执行生命周期
ragment是我们经常使用到的一个控件,但是,相信大家会出现这样的一个问题,每次切换fragment的时候之前我们一直都是这样写的代码:/** * 根据传入的参数来改变当前的fragment * * @param fragment */ private void showFragment(Fragment fragment) { Fr原创 2017-06-05 17:12:32 · 25434 阅读 · 0 评论 -
安卓开发过程中遇到问题总结二
1.android 自定义view报如下错误:java.lang.IllegalStateException: Underflow in restore 原因:在自定义view里面调用了如下方法来保存画布的bitmap图像; mCanvas.restore() 解决方法:改成: mCanvas.save(); mCanvas.restore();原创 2016-03-10 10:16:43 · 3029 阅读 · 1 评论 -
安卓开发实战之app之版本更新升级(DownloadManager和http下载)完整实现
前言本文将讲解app的升级与更新。一般而言用户使用App的时候升级提醒有两种方式获得:一种是通过应用市场 获取一种是打开应用之后提醒用户更新升级而更新操作一般是在用户点击了升级按钮之后开始执行的,这里的升级操作也分为两种形式:一般升级强制升级app升级操作:应用市场的app升级在App Store中升级需要为App Store上传新版App,我们在新版本完成之后都会上传到App St原创 2016-09-28 17:08:07 · 59937 阅读 · 19 评论 -
解决错误ConcurrentModificationException
今天莫名的找bug日志发现了这个错误,有点懵逼了,看别人的代码就是这样的。google了一下原来是当方法检测到对象的并发修改,但不允许这种修改时,抛出此异常。说明以上办法在同一个线程执行的时候是没问题的,但是在异步情况下依然可能出现异常。解决办法:1) 通过Iterator修改Hashtablewhile(it.hasNext()) {Object ele = it.next();原创 2017-06-27 14:51:54 · 1942 阅读 · 0 评论 -
自定义view和View、Window、Activity、Display之间的关系
好就没有看csdn了,发现好多东西可以学了,唉,最近股市的震荡头有点痛,哈哈,搞个学习的心情都没有。然后一直拖到现在简历也没有改好,就还是要看一些东西,怕哪天心血来潮去面试随便一个东西都答不上来那就是有点蛋疼了。当问到自定义控件的时候,或许你知道怎么用,可能说起来也就不是那么回事了啊,所以还是有必要去把一些原理去搞清楚。 一、View 一般自定义控件的话呢,可实原创 2015-06-24 16:43:59 · 2677 阅读 · 0 评论 -
安卓组件化的锅
最近公司做了某个国企的单,我还以为是要做大的项目,然后想当然的使用组件化来开发app,直到今天我是后悔了。 组件化看起来高大上,其实不然,感觉一般的项目是用不到,哈哈,如果没有明确的需求前不宜使用组件化否则就变成了画蛇添足了。组件化用起来无非就是为了解耦和便于调试,当需求不明确就很鸡肋,需求不断变化就会导致代码很乱或者界面臃肿。组件化使用无非就是通过gradle动态配置a原创 2018-01-22 11:19:19 · 652 阅读 · 3 评论 -
TextureView 做相机预览黑屏
特么使用TextureView 代替Surfaceview 来做相机预览页,因为用Surfaceview预览的话传一个SurfaceHolder进去,用Textureview预览的话需要传进去一个SurfaceTexture,其他的Camera流程不变。demo 是ok的但是发现放到项目里面是黑屏,起先以为是so库什么东西冲突了,后来发现是TextureView onSurfaceTextur...原创 2018-05-17 15:50:48 · 6835 阅读 · 1 评论 -
Android Studio从2升级到3 代码迁移需要的操作
特么的运行着 然后发现死丢丢跑不起来了,是创建helloworld都出错的那种,果断换成新版本来弄一下。代码import是一片红,哈哈module目录下的build.gradle 1.删除buildToolsVersion。Android Studio3.0之后不需要再指定buildToolsVersion,每个版本的Android Gradle插件都有默认版本的构建工具,不删除只...原创 2018-05-23 17:47:12 · 1391 阅读 · 0 评论 -
error:style attribute '@android:attr/windowEnterAnimation' not found 解决
不得不说谷歌有时候也是很坑的,这里吐槽下。最近把老项目用android studio 3.1 打开,发现报错: error:style attribute ‘@android:attr/windowEnterAnimation’ not found才发现是aapt2 的错误,果断把aapt2 给禁用掉: 升上3.1之后,gradle build总是出现“The optio...原创 2018-06-11 11:20:09 · 2572 阅读 · 0 评论 -
XmlResourceParser出错解决
今天有点懵逼,对接的pos机在debug模式下安装在手机上是木有报错的,然后打包出来就出错了。然后看厂商的demo发现也是这样,我特么就感觉是没有代码混淆的问题,然后代码混了下果断ok. 错误如下:java.lang.NoSuchMethodError: No interface method i()I in class Landroid/content/res/XmlResourcePars原创 2017-05-16 15:56:22 · 2619 阅读 · 1 评论 -
安卓实战之如何快速搭建app架构
前言最近公司的另一个项目又要立项了,作为公司的唯一安卓工程师任务来了(新来的移动端的老大说项目还是主要你负责,我就负责帮你们安排下进度),听了这话我是伤心的在这公司不管是几个还是1个安卓开发都是我来搭建,干着与工资不符的事情,好的一点是开发没有人干涉平时也能学习自己想学的东西。如何选择app架构(MVC/MVP/MVVM)最近越来越多的人开始谈论架构。我周围的同事和工程师也是如此。尽管我还不是特别深原创 2016-05-23 22:44:56 · 18527 阅读 · 9 评论 -
安卓IPC之aidl使用(三)---System aidl调用
AIDL的理解:Service中的IBinder 还记得我们在MyService中利用new IMyInterface.Stub()向上转型成了IBinder然后在onBind方法中返回的。那我们就看看IMyInterface.Stub吧:public static abstract class Stub extends android.os.Binder implements aidl.IMy原创 2016-09-04 17:52:44 · 2580 阅读 · 1 评论 -
时光轴二之RecyclerView版时光轴效果
RecyclerView 轻松实现时光轴,哈哈哈,就是这么任性原创 2015-08-11 18:18:19 · 4600 阅读 · 4 评论 -
安卓5.x的Palette之你不知道的事
Palette的使用确实让app的色调变的更加和谐,Palette的本意就是调色板,然后一般也没有注意,但是既然是安卓5.x的新东西所以有必要去学习学习。 或许你已经看到了Palette从图像中提取突出的颜色,这样可以把色值赋给ActionBar、或者其他,可以让界面整个色调统一。你现在去看5.x的界面觉得色调和谐不会觉得刺眼,然后呢,UI的开发是app的重点,一般一个app很酷炫不一原创 2015-11-18 00:03:37 · 2337 阅读 · 0 评论 -
掌握 Coordinator Layout
在今年的 Google I/O 15上Google 发布了 新的支持库 ,其中有好几个组件与Material Design设计密切相关,在这些新组件中,你可以找到有几个类似于ViewGroup 的控件,如 AppbarLayout,CollapsingToolbarLayout 和 CoordinatorLayout.这些ViewGroups 控件提供了非常强大的功能,我决定写一篇文章来介绍相关的配置和技巧。转载 2015-11-14 11:03:06 · 1096 阅读 · 0 评论 -
RecyclerView全攻略进阶优化
Google 发布的Material Design支持库,支持库应该直接用V4提升到V7了,引入了RecycleView。RecylcerView从去年5.0开始发布好一阵子了,这货目前能兼容到API 7,直接继承自Viewgroup,比ListView更为轻量,使用得当的话,完全可以替代ListView/GridView。本文将基于RecyclerView实现ListView/GridView的原创 2015-11-09 20:06:22 · 13153 阅读 · 4 评论