android软件开发
林尚辉
写写博客对Android技术进行总结和研究,技术一直在改变需要不断的学习
展开
-
快速集成android实现listview的字母A-Z排序,界面侧边字母索引
转载请标明出处Android手机字母A-Z排序侧边索引是非常常见的功能,在此提供快速集成框架.教你用Android studio工具一分钟搞定这个效果.实现效果:以及点击F跳转效果第一步库包导入实现拼音检索功能-------拼音检索详细见:compile 'com.github.promeg:tinypinyin:1.0.0'// ~80KB同步后后面会下载80k的文件,就可以使用-------...原创 2016-05-15 11:23:47 · 11759 阅读 · 0 评论 -
Android中的三级缓存机制
目的:1防止oom 2,提高加载效率bitmap对象默认 ARGB_8888高质量图片显示,而我起先使用rgb565格式图片呈现效果不变,内存减少近一半,但是从Android4.0开始该选项就无效了,即使设置了也按默认第一级 强引用+软引用 采用LRU算法优化内存使用,内存不足时,把最小使用的图片优先从内存移除强引用:LRUCache即可 覆写sizeOf返回每次加载Bitmap占用大小,覆写...原创 2018-02-28 09:46:54 · 2409 阅读 · 0 评论 -
Error:(29, 13) Failed to resolve: com.android.support:appcompat-v7:27.+ 出错完整解决方案
首先我们谈谈为什么会出现这个出错提示: 个人开发环境的sdk的Android平台版本没有更新到最新的27版本,导致不支持最新版本.不同的项目引用,导致别人版本比自己的版本新. 解决方案:1.最方便最快捷的解决方案: 原理:将project项目的编译版本降低到个人开发环境的sdk所支持的版本.新建一个可以运行的项目model,也就是自己的电脑sdk所支持的环境,如下修改后点击Try Aga...原创 2018-06-20 18:09:45 · 9469 阅读 · 0 评论 -
Android Studio module从2.3升级到3.1的详细过程处理,让公司项目直接匹配最新studio3模式
在这里不得不吐槽一下google,由于新的Android studio3版本出来了,然后也摒弃了Android2.3版本,导致现在我的Android2.3.3出问题提示下载配件也失效了,还有就是依赖项目的新模式从compile变成了implementation也给我们这些程序猿额外的任务,升级公司的旧项目的版本。 在这里我就来说说我升级项目版本的经历过的坑。新建project工程命名为Lin...原创 2018-06-29 19:27:12 · 3972 阅读 · 0 评论 -
Android Studio 3.1 import new module找不到解决方法
Android Studio 3.1版正式发布我们程序猿也开始陆陆续续的更新项目,但是发现3.1版本不再自动在import model后将项目加入编译的列表。然后各种找无语一、依次选择菜单“File”——“New”——“Import Module”,按提示导入具体的demo。此时Android Studio 3.1毫无反应,例如:将appversionchange这个model impor...原创 2018-06-28 15:23:51 · 6350 阅读 · 0 评论 -
Android的手机ip代码设置------有图有真相
首先得说,这个用代码设置手机ip的功能并不常用,只适用于特殊场景需求,例如app刷下载量,不断地更换手机ip来下载应用市场的公司要的应用。 当然我又不得不吐槽各大应用厂商和谷歌7.0系统,现在的手机系统升级权限各种限制,导致对于系统有些敏感的功能代码,不一定可以用。 接下来讲讲我的代码,亲测可以用,在Android5.1系统一下都可以用。反正刷手机下载量的话,并不要求全手机系统...原创 2018-07-18 17:37:19 · 7856 阅读 · 3 评论 -
Handler内存泄露原理及完美自定义handler解决方案
发现handler有内存泄漏,但是度娘的那些静态类自定义handler并没有解决问题,并且那种方式局限性很严重。然后我用现在的这种方式完全解决内存泄漏问题。人格担保有用,不行就喷我。前言因为Android采取了单线程UI模型,开发者无法在子线程中更新UI,为此Android为我们提供了Handler这个类,实现ui线程的队列式更新,防止出现界面更新错乱。问题来了: @O...原创 2018-07-24 13:30:11 · 12685 阅读 · 6 评论 -
Android组件化管理---build.gradle进阶知识
前提:要做好项目代码的各个版本数据控制管理,首先我们就得先学习gradle进阶的认知,毕竟平时我们开发也不重视gradle的脚本编写。组件化管理---build.gradle进阶知识1.项目依赖版本统一管控:方式一:在project中创建统一的ext{}对版本数字进行控制:然后针对module中的build.gradle统一使用这边的版本号:当然注意将‘ ’引号换...原创 2019-01-16 19:44:41 · 801 阅读 · 0 评论 -
Android架构项目代码结构规范--组件化代码
前言:组件化和插件化有什么区别?虽说网上有很多文章但是讲清的聊聊无几,这也是这篇文章的由来。大方向:组件化是一个项目主管设计管理项目架构方案,而插件化有商务上的合作和局部功能热更换修复等小方向: 如果是公司app合作,组件化也就是插件化作为别人公司的一个子模块。简介:组件化是代码上的功能模块化,而插件化是功能上的模块apk插件化。具体看下文一.原因项目迭代到一个时期后,随着...原创 2019-01-29 18:12:37 · 2682 阅读 · 1 评论 -
android之adb connect手机设备
adb手机连接是Android开发过程中常用的,也可以通过无线wifi来连接手机,但是百度搜索了一大堆资料都不全面,而且认知还不全面,导致浪费生命,有时候浪费个人的时间反而更加惹人恶心。 window10电脑adb环境搭建:错误提示:'adb' 不是内部或外部命令,也不是可运行的程序或批处理文件1.adb软件位置搭建。在电脑图标上--属性--高级系统设置--环境变量...原创 2019-07-15 00:52:49 · 18429 阅读 · 1 评论 -
小米5手机root详细解决方案
当我们开发一些特殊功能,需要root权限时就需要一台root的手机,而现在系统开发商都针对安全管理的很严,导致root权限越来越难获取到,同时root权限下,我们也可以针对的做一些应用的劫持和黑客技术,所以写一篇小米5的root方案.1下载开发版系统才能root,稳定版不支持root详细下载镜像地址:http://www.miui.com/download-313.html2....原创 2019-07-15 12:08:49 · 5570 阅读 · 0 评论 -
Android http安全之劫持
随着技术的跟新换代,现在也出现了很多的Android手机上的类似黑客技术,常见的hook,xpose等可以进行应用页面劫持,或者网络的dns劫持,当然也包括联网抓包等等,普通的使用随着安卓系统的升级安全限制增多,并且手机开发商的系统安全定制是日常使用基本安全。而本片博客要讲的是,开发应用如何防止被黑,如果将手机root开放权限,或者使用低版本的手机,或者使用个人定制系统就能盗取应用的接口,或者...原创 2019-07-30 01:39:48 · 2203 阅读 · 3 评论 -
Android http安全之网络编程和证书
最近面试上市大公司遇到的问题,网络安全底层与fiddler证书,我只想吐槽果然不缺人,上篇劫持的第二篇研究总结。如果通常网络我们使用常用的开源框架,然后设置通用的异步同步通信等格式,但是底层呢?这个我们常说只有面试的时候会用到,那如果想要黑客一下,拦截一下网络反向开发如果不知道原理,怎么突破?1网络分层模型: osi:开放式系统互联。国际标准化组织(iso)指定的理论模型;...原创 2019-08-06 18:44:57 · 915 阅读 · 0 评论 -
Android之串口232从不会到开发功能详解
首先由于公司开发需要,我才接触到串口通信。普通的手机app开发并没有串口。使用到的为机顶盒定制板子(有232串口驱动编译的Android系统)的开发,以及与外部设备的连接。--------前提软件开发需要:1.串口232线;2串口转usb线;3Android系统带232串口(注意:Android系统由串口驱动编译具备串口功能) 4.笔记本电脑及串口调试工具 5.Android系原创 2017-08-19 17:18:05 · 18663 阅读 · 6 评论 -
Android图片加载框架ImageLoader框架的坑
用了ImageLoader这套框架非常久了,一直觉得熟悉方便好用,而且原本软件中使用也不存在什么问题.直到最近开发的一个项目中,我才发现为什么很多开发者都放弃ImageLoader这套用熟了的框架换用glide图片加载框架了。1.ImageLoad特殊场景的内存泄漏;普通activity的界面使用中,加载图片的页面销毁查看内存泄漏也没有什么问题。但是如果在fragment中replace等原创 2017-07-04 10:51:49 · 3020 阅读 · 0 评论 -
使用第三方和微信使用事项
什么时候使用第三方?我们 用户 别人 当我们的能力不足以完成功能需求时,需要借助别人的功能哪些第三方?第三方SDK(短信验证,社会化分享,支付,地图,推送。。。)+开源框架(ImageLoader,gson,fastjson,ButterKnife,volley,xutils,glide,下拉刷新....)第三方使用步骤?1.去官网下载所需资源2.原创 2016-06-29 15:27:11 · 2325 阅读 · 0 评论 -
java中加密算法Base64和RSA详解和Android
手机的安全重要信息容易被泄露的方式:1.会从我们本地泄露 手机中毒等2.会从服务器泄露 服务器人员将信息卖出去等3.半路上,网络传输的过程中 加密传输数据 手机连接WiFi,如果在WiFi上设置监听数据,将关键的信息拦截下来,就有可能盗取个人重要信息。-------常见的加密算法: AES(高级加密标准) DES(即数据加密标准,是一种使用密原创 2016-06-29 15:55:36 · 7894 阅读 · 0 评论 -
svn的使用详解与eclipse和Android studio的关联上
本文为个人原创禁止转载 网上百度查SVN工具,发现网上的信息不够全面,所以我便自己关于svn使用做了个总结和各个功能详细的截图,以及svn与eclipse,svn与Android studio的关联使用做详细说明.(1)什么是SVN*SVN是团队合作开发项目时工程共享的一种工具;*项目经理将商城的框架上传到服务器上,张三和李四都需要用框架进行各自的开发,这样就会通过svn原创 2016-06-30 16:18:44 · 2932 阅读 · 0 评论 -
svn的使用详解与eclipse和Android studio的关联下
下面是讲svn与Android studio关联使用的详细截图,Android studio由于是去年刚开始使用,所以网上可能对svn与studio的关联教程并不多.-----studio的svn配置-------svn与Android studio关联 项目忽略没用文件,减少上传时间--svn与Android studio关联 可以选择忽略的文件内容原创 2016-06-30 20:32:55 · 2536 阅读 · 0 评论 -
快速集成Android实现下拉刷新上拉加载更多
本文实现一分钟快速集成BGARefreshLayout下拉刷新和上拉加载的功能.这个是简单单功能的集成方法,详细BGARefreshLayout请到github中的demo,这只是我简化版快速集成.重要的代码实现如下:MainActivity类:public class MainActivity extends AppCompatActivity i原创 2016-07-13 17:10:19 · 3599 阅读 · 1 评论 -
Android本地视频播放器mediaplay版
本文为自定义的视频播放器,可进行屏幕切换(由于换屏时大小变化,电脑截图就分开截图了),效果如下图:--------------播放视频概括:SurfaceView+MediaPlayer以及 VideoView 2种方式SurfaceVIew中有个SurfaceHolder,通过surfaceView.getHolder( )方法获取原创 2016-07-15 16:26:18 · 5926 阅读 · 9 评论 -
Android本地文件点击视频播放器vitamio版
本博客用Android studio集成了vitamio的自定义视频播放器,同时可以在文件管理中选择播放,想要一个自己的视频播放器这边便可以满足实现具体功能如下:1.sd卡内存视频文件的点击播放;2.视频时间进度条;3.屏幕亮度的手势滑动;4.视频音量的手势滑动;5.多点手势效果6.自定义存储视频url播放想要的重要的代码,我原创 2016-07-16 12:26:24 · 9232 阅读 · 8 评论 -
快速集成Android的水波纹效果解决低版本报错问题
本文章使用Android5.0中其中一个炫酷的效果,点击水波纹扩散效果( Ripple Effect).同时解决低于5.0版本的兼容问题.让你半分钟搞定这个效果同时解决掉低版本系统不兼容问题.先将水波纹图片展示,这个是自己截图比较简陋的: 首先工程目录截图:主界面activity_main.xml中定义一个button:<RelativeLayout原创 2016-07-06 16:44:04 · 5689 阅读 · 0 评论 -
Android手机与vr交互暴风魔镜3D效果显示原理
虚拟现实头戴显示器设备,简称VR头显或VR眼镜,手机屏幕只有一个,而我们却有两个眼睛,又必须要让左、右眼所看的图像同步且各自独立分开,才能有立体视觉。所以看vr电影最基本的条件就是将手机屏幕分屏,然后通过两个镜片,左右眼得到同样的图像信息,消除双眼视角重叠带来的分离感,从而取代了看到前方是距离很近的显示屏的感觉。还有就是手机的传感器,目前vr视频播放会使用手机的陀螺仪等重力传感器实现视频播放过程周围视角的随角度转变,如同真正意义上的看头转动看周围及身后。这就是身临其境的效果实现原理,但是这些视频由于360原创 2016-07-18 15:43:23 · 14315 阅读 · 1 评论 -
Android中事件处理机制一分钟理清思路
刚开始对我事件处理机制的概念还挺模糊的,而网上的讲解又很杂很乱.那么现在在这里你可以快速理清事件处理机制了.首先用处肯定得知道:事件处理机制就是为了应对嵌套式的布局中强焦点和弱焦点的点击事件进行自我定义。可以说是Android软件设计中重要的技术设计方法。当然如果你想问嵌套式布局是什么?嵌套式布局就如下图:一个界面中有父view,子view和子控件,但是点击事件的处理方案就原创 2016-07-08 23:47:29 · 2458 阅读 · 0 评论 -
Android webview实现h5视频全屏播放兼容Android7.0,自己添加webview库兼容全部版本
Android webview实现h5视频全屏播放兼容Android7.0,实现微信的网页浏览功能,自己添加webview库兼容全部版本,解决webview坑视频全屏onShowCustomView经常会点击不回调原创 2017-02-28 15:29:34 · 14656 阅读 · 1 评论 -
webview内存泄漏处理----无效请喷我
首先不得不吐槽一下,谷歌的webview太坑爹了,一大堆问题。和ios的webview简直一个屌丝一个高富帅。在开发过程中公司那边有一些h5模板就各种嵌套webview展示界面,但是加载的页面如果有很多图片就会发现内存占用暴涨,并且在退出该界面后。即使在包含该webview的Activity的destroy()方法中,使用webview.destroy();webview=nu原创 2017-03-26 18:10:01 · 3911 阅读 · 5 评论 -
Android-黑客技术-实现类似电脑版软件破解版
首先先看看什么叫做Android的黑客技术效果:游戏:修改正版apk代码,实现破解免支付买道具。应用:修改添加自己的信息,和应用市场应用看起来一样最近趁着清闲,学了段时间的Android逆向技术,发现了新世界,所以现在就算手机app也是可以像电脑exe一样,实现破解绿色版本,或者病毒版本,然后就可以嘿嘿嘿了。二次修改apk地址:链接:(不好意思,公共场合我们是正经的开发人...原创 2019-08-23 14:05:44 · 2692 阅读 · 0 评论