分享一个自己的开源项目ShapeView 在家办公都快1个月了,人都要疯了。希望疫情早点过去,加油武汉,加油中国!!!今天给大家分享一个我自己封装的小项目,我们公司的产品也在使用,就是使用自定义属性替代项目中的shape文件,首先看效果图:从效果图中可以看出,覆盖了App中常用的按钮效果,弧度、按压效果、标签选择、按钮渐变色等。如果用shape.xml实现的话,项目drawable目录下如图所示:你会发现需要写很多shape文件...
我的新书《Android App开发从入门到精通》终于出版啦 前言经过了两年多终于完成了这本书,2016年9月份开始写的,到今天为止2年零2个月,本书的内容大部分是去年完成的,看过我去年总结的读者可能知道,去年事情很多太忙了,导致本命年这本书没有上架(有点小小的遗憾)。工作之余喜欢写写技术文章,对自己的技术做一个总结同时也让后来者站在我的肩膀上,之前一直在CSDN发表文章,也是CSDN博客专家,单篇文章上万阅读量,在这里感谢这个平台,让我的文章被更多人看...
Glide开源库的使用 关于GlideGlide是一款快速高效的Android图像加载库,注重于平滑的滚动。Glide提供了易用的API,高性能、可扩展的图片解码管道(decode pipeline),以及自动的资源池技术。Glide 支持拉取,解码和展示视频快照,图片,和GIF动画。Glide默认使用的是HttpUrlConnection类下载图片,但是也提供了与Google Volley和Square OkHt...
zxing开源库的基本使用 如果你的项目中有模块跟二维码相关的话,那你一定听过或者用过大名鼎鼎的zxing开源库。什么是zxing?ZXing是一个开源的,用Java实现的多种格式的1D/2D条码图像处理库,它包含了联系到其他语言的端口。zxing可以实现使用手机的内置的摄像头完成条形码的扫描及解码。本篇文章就来学习zxing的基本使用,学习了以下几个内容就能满足大部分项目中的二维码相关需求:通过摄像头扫描二维码图...
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...
8.0通知栏新增通知渠道 从Android 8.0(API级别26)开始,所有通知必须要分配一个渠道,对于每个渠道,可以单独设置视觉和听觉行为。然后用户可以在设置中修改这些设置,根据应用程序来决定哪些通知可以显示或者隐藏。创建通知渠道之后,程序无法修改通知行为,创建之后只有用户可以修改,程序只能修改渠道名称跟渠道描述。我们可以为一个应用程序创建多个通知渠道,不同的通知类型用不同的渠道。例如重要通知用一个渠道,可以为...
封装好的图片滑动框架(AndroidImageSlider) 前言广告轮播条的重要性不言而喻。在很多类型app中出场率都很高。今天给大家介绍一个轮播图开源项目,这个项目把轮播图需要的ViewPager跟计时器做了封装,使用极其方便,支持gradle在线依赖。还封装了几种图片滑动动画。无图无真相:有10多种滑动动画,跟两种滚动状态。能满足大部分需求。如何使用首先在线依赖三个库compile 'com.squareup.picasso:picasso:2.3.2'
Android调用微信登陆、分享、支付(第二版本) 前言大部分的app都有接入第三方sdk的需求。例如第三方登录需要接入微信、QQ、微博。第三方支付需要接入微信、支付宝、银联。这些我都有使用过,都有使用过他们的sdk,感觉最麻烦的就是微信,不能直接调试,得用正式的签名进行签名才能调试。还有他们官方的demo也是跑不起来的,因为没有签名文件。需要注意的地方也很多。代码实现微信sdk现在支持Android Studio在线引用了,之前都是添加jar的方法
Android WebView基本使用 WebView介绍Android WebView在Android平台上是一个特殊的View, 基于webkit引擎、展现web页面的控件,这个类可以被用来在你的app中仅仅显示一张在线的网页,还可以用来开发浏览器。WebView内部实现是采用渲染引擎来展示view的内容,提供网页前进后退,网页放大,缩小,搜索。Android的Webview在低版本和高版本采用了不同的webkit版本内核,4.4后直
调用Android自带浏览器打开网页 在Android中可以调用自带的浏览器,或者指定一个浏览器来打开一个链接。只需要传入一个uri,可以是链接地址。启动android默认浏览器在Android程序中我们可以通过发送隐式Intent来启动系统默认的浏览器。如果手机本身安装了多个浏览器而又没有设置默认浏览器的话,系统将让用户选择使用哪个浏览器来打开连接。Uri uri = Uri.parse("https://www.baidu.com"
Android Studio发布项目到jcenter,一行代码引入Module 前面我们使用自己封装的okhttp项目时候,只需要app/build.gradle文件中加一行代码就能使用项目。compile 'com.ansen.http:okhttpencapsulation:1.0.1'那是因为我之前就把封装的module提交到了jcenter服务器。所以android sutdio把从jcenter服务器把类库下载下来。提交项目到jcenter当我们做好一个轮子的时候,或
FileProvider解决FileUriExposedException FileUriExposedException在给app做版本升级的时候,先从服务器下载新版本的apk文件到sdcard路径,然后调用安装apk的代码,一般写法如下:private void openAPK(String fileSavePath){ File file=new File(fileSavePath); Intent intent = new Intent(Intent
Android检查更新下载安装 检查更新是任何app都会用到功能,任何一个app都不可能第一个版本就能把所有的需求都能实现,通过不断的挖掘需求迭代才能使app变的越来越好。检查更新自动下载安装分以下几个步骤:请求服务器判断是否有最新版本(通过versionCode)如果有最新版本,就把最新的apk文件下载到本地下载完成之后给系统发起一个安装的Intent。打开项目下面app下面build.gradle文件,我们可以看到里面
OkHttp封装之后使用 代码都封装好了,上层Activity如何调用呢?1.依赖如果是android studio开发支持在线依赖(我已经把项目添加到jcenter上):compile 'com.ansen.http:okhttpencapsulation:1.0.1'如果是eclipse那你先把ide切换到android studio吧。。。不闲麻烦的话也可以把源码module的源码copy出来,反正也就几个类。2.初始
OkHttp封装 ### 前言 上个知识点介绍了OKHttp的基本使用,在Activity中写了大量访问网络的代码,这种代码写起来很无聊,并且对技术没什么提升。在真实的企业开发中,肯定是把这些代码封装起来,做一个库,给Activity调用。封装之前我们需要考虑以下这些问题: - 封装基本的公共方法给外部调用。get请求,Post请求,PostFile - 官方建议OkHttpClient实例只new一次,那我们
OkHttp基本使用 OkHttp介绍Android系统提供了两种HTTP通信类,HttpURLConnection和HttpClient,HttpURLConnection相对来说比HttpClient难用,google自从2.3版本之后一直推荐使用HttpURLConnection,并且在6.0版本的sdk中直接删掉了HttpClient类。但是, 上面两个类库和OkHttp比起来就弱爆了, 因为OkHttp不仅具有
Handle的原理(Looper、Handler、Message三者关系) 介绍前面的内容对Handler做了介绍,也讲解了如何使用handler,但是我们并不知道他的实现原理。本文从源码的角度来分析如何实现的。首先我们得知道Handler,Looper,Message Queue三者之间的关系 - Handler封装了消息的发送,也负责接收消。内部会跟Looper关联。 - Looper 消息封装的载,内部包含了MessageQueue,负责从MessageQueue
如何使用Handler 什么是Handler?Handler可以发送和处理消息对象或Runnable对象,这些消息对象和Runnable对象与一个线程相关联。每个Handler的实例都关联了一个线程和线程的消息队列。当创建了一个Handler对象时,一个线程或消息队列同时也被创建,该Handler对象将发送和处理这些消息或Runnable对象。handler类有两种主要用途:执行Runnable对象,还可以设置延迟。两
AndroidN多窗口支持 Android N 可以同时显示多个应用窗口。 在手机上,两个应用可以在“分屏”模式中左右并排或上下并排显示。例如,用户可以 在上面窗口聊QQ,下面窗口发送短信。如图所示,两个app在分屏模式中上下显示: 如何让你的app支持多窗口?如果你的app支持Adnroid N,在AndroidManifest.xml文件中对 或 节点设置android:resizeableActivity就能启用或者
gson解析json json介绍JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于 ECMAScript 规范的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。现在大部分APP都使用json给前端返回数据。gs
Android6.0运行时权限 从 Android 6.0(API 级别 23)开始,用户在使用软件时向其授予权限,而不是在安装时授权。这个方法可以简化安装过程,用户在安装或者更新软件时不需要授予权限。它还能让用户对应用的功能进行控制。例如一个摄影应用,他使用摄像头权限是正常的,但是用户无法理解这个应用要读取联系人信息。系统权限分为两类:正常权限跟危险权限正常权限不会直接给用户隐私权带来风险。在AndroidManifest.x
Broadcast Receiver基本使用 Broadcast Receiver介绍Broadcast Receiver翻译成中文叫“广播接收器”,所以它的作用是用来接收发送过来的广播的。Android应用程序可以发送或接收来自Android系统和其他Android应用程序的广播消息,类似于发布订阅设计模式。当有兴趣的事件发生时发送这些广播。例如,Android系统在各种系统事件发生时发送广播,例如当系统启动或设备开始充电时。应用程序也可以发
RecyclerView使用大全 RecylerView介绍RecylerView是support-v7包中的新组件,是一个强大的滑动组件,与经典的ListView相比,同样拥有item回收复用的功能,这一点从它的名字recylerview即回收view也可以看出。官方对于它的介绍则是:RecyclerView 是 ListView 的升级版本,更加先进和灵活。RecyclerView通过设置LayoutManager,ItemDe
带你实现开发者头条APP(五)--RecyclerView下拉刷新上拉加载 转载请注明出处:http://blog.csdn.net/lowprofile_coding/article/details/51321896一 、前言最近实在太忙,一个多礼拜没有更新文章了,于是今晚加班加点把demo写出来,现在都12点了才开始写文章。1.我们的目标把RecyclerView下拉刷新上拉加载更多加入到我们的开发者头条APP中。2.效果图3.实现步骤找一个带上拉刷新下载加载更多的R
Android学习路线总结,绝对干货 一、前言不知不觉自己已经做了几年开发了,由记得刚出来工作的时候感觉自己能牛逼,现在回想起来感觉好无知。懂的越多的时候你才会发现懂的越少。如果你的知识是一个圆,当你的圆越大时,圆外面的世界也就越大。最近看到很多Android新手问Android学习路线,学习方法啊,如何入门啊,所以我从网上找了一些资料,然后以我的工作经验给大家总结一下,让你们少走弯路,提取一些工作中经常用到的技术。二、学习知识汇总1、
带你实现开发者头条APP(四)---首页优化(加入design包) 一 、前言上次模仿开发者头条首页实现了一个版本,给345大神,我的产品经理一看,又被鄙视了一把,说还在用老的技术,于是乎这三天把整个design包研究了一遍,然后把首页的代码几乎重写了一遍。。。。顺便用上了android studio,方便大家导入。。。效果图如下(window下的录屏没有mac的好): 从gif动态效果图中我们可以看出,跟上次没有啥变化,唯一变化的就是列表上拉的时候会隐藏标题
带你实现开发者头条APP(三) 首页实现 一.前言今天实现开发者头条APP的首页。是本系列的第三篇文章,效果图如下: 从gif动态效果图中我们可以看出,最外层有三个tab(精选,订阅,发现),在精选界面顶部有一个轮播的图片广告,广告下面是一个精选文章列表。二.外层三个tab实现我这里用Viewpager实现的,可以左右滑动,灵活的隐藏下面fragment的显示隐藏。1.布局文件布局文件比较简单,上面包涵三个TextView的Relativ
带你实现开发者头条(二) 实现左滑菜单 今年开始模仿开发者头条的侧滑菜单,是本系列第二篇文章,相信大家已经看到很多app使用这种侧滑。今天我来教大家用android自带DrawerLayout控件实现。DrawerLayout是SupportLibrary包中实现了侧滑菜单效果的控件,可以说DrawerLayout是因为第三方控件如MenuDrawer等的出现之后,google借鉴而出现的产物。DrawerLayout分为侧边菜单和主内容
带你实现开发者头条(一) 启动页实现 对于很多初学者或者刚工作的Android新手来说,我们的项目经验还停留在做demo的阶段,有没有一种很low的感觉,并且当你真正上手做大项目的时候又不知道把自己学到的东西用上去。。有一种自己家里有座金山却不知道可以用来换钱换吃的。经过345大神的提醒,说觉得开发者头条这个app不错,用到了很多android中常用的技术,叫我写一系列的文章,去模仿一个商业的app。于是我去下载了一个开发者头条app(
写技术文章必备的几个小工具 今天给大家推荐写博客必备的几个工具,也是我自己每次写文章用到的。一.小书匠这个工具是345大神告诉我的,非常好用的MakeDown编辑器,比较常见的网站都支持,例如:csdn,简书。官网下载页面传送门在IT这个快节奏的行业,用了这个工具写文章之后能帮到我们什么? 节省时间,容易学习,语法简单,打字速度快(基本不要动鼠标),下面我给大家介绍下他的特性。。。。用了它之后,相信你会跟我一样爱上他。。。
Android Studio 入门 本文适用于从Eclipse转AndroidStudio的开发者最近打算写一个系列的android初级开发教程,预计40篇以上的文章,结合我实际工作中的经验,写一些工作中经常用到的技术,让初学者可以少走弯路,这是本系列的第一篇文章,345大神写的。原文地址一. 下载安装JDK安装并配置JAVA_HOME环境变量这个就略过了,纯小白请自行百度Android Studio安装截止到2016年4月9日A
TextView使用大全 最近打算写一个系列的android初级开发教程,预计40篇以上的文章,结合我实际工作中的经验,写一些工作中经常用到的技术,让初学者可以少走弯路,写一个系列的话,大家学习起来也有头有尾。今天就从我们每天都会用到的TextView讲起.1.设置背景颜色 <TextView android:layout_width="match_parent"
程序员学习视频教程汇总 在IT这个节凑快的行业,我们每天都需要学习,需要get新技能,才能不被淘汰,成功的人总是贵在坚持,我觉得有一句话说的很好:“这个世界唯一公平的事情就是大家的时间都一样”.这里我给大家整理了几十个G的视频,让你走上人(苦)生(逼)巅(人)峰(生),赢(天)取(天)白(撸)富(管)美(子)。目前已经整理的视频资料,涉及到了好几门语言:Java,C++,C#,Php,Python,Html5
SourceTree提交AndroidManifest.xml文件 当我在github上新建一个项目,用SourceTree提交一个android项目的时候,发现AndroidManifest.xml文件不能提交....之前也有碰到android项目里面的AndroidManifest.xml文件不能提交,总结出一个结论,肯定是全部忽略文件忽略了AndroidManifest.xml.我这边以mac电脑给大家演示一下怎么让Source Tree不忽略A
php常量介绍以及一些简单用法 php中常量分以下三种:1.自定义常量2.预定义常量(PHP自身提供的)3.魔术常量(特殊常量) 形似常量,实非常量 魔术常量前后都有__一.自定义常量define("PATH",'D:/amp/apache/htdocs');//定义一个常量echo PATH; //输出常量的值if(!defined("test")){//如果test常量不
2015年总结,平平淡淡的一年. 一.前言: 转眼间春去秋来,2015年已经过去,新的2016年开始了,前几天看到了郭林大神的年终总结,很有感触,连续看了好几遍,大神在结婚期间都不忘记总结,作为菜逼如我也来总结一下吧,记录这平淡的一年,也树立明年的目标. 二:2015年大部分时间如何度过的? 一年一共365天,说长感觉很长,说短也不短,感觉自己的时间没有好好利用起来,除了工作比较忙之外,自己业余时间也弄过自
AHCI: Failed to attach drive to Port1 (VERR_GENERAL_FAILURE). 在mac操作系统下,安装VirtualBoxVm虚拟机,虚拟机里面安装wind7操作系统.在启动虚拟机的时候报错:AHCI: Failed to attach drive to Port1 (VERR_GENERAL_FAILURE) 最后发现问题,原来我没有选择window7的镜像文件.......当我们运行到了上面这张图显示的步骤时候,不要图快直接点击start,而是应该选择你
创建SSH Key连接github或gitlab mac下用SoureceTree下载github或gitlab上的项目时,需要进行ssh key验证.每次重装系统啥的都要重新弄,我在csdn上看到一篇不错的文章.转载一下,以后自己找起来也方便.地址:http://blog.csdn.net/troy__/article/details/40082657
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'(2) center os服务器上搭建discuz论坛初始化程序的时候出现的.我把localhost改成127.0.0.1解决了这个问题.
discuz接入七牛sdk 自己摸索了几天,找群里面的人各种问,都没有一个人回答我,哎,国内的开源精神呢......需要修改有以下几个:1.替换 /source/class/class_core.php 文件 解释:就把下载下来的class_core.php文件替换掉/source/class下的.2.在当前源码目录下增加一个文件夹. 解释:就把七牛的插件源码下载下来,把里面的extend文件夹复制到
Mac OS apache php配置 1.进入Apache配置文件sudo vi /etc/apache2/httpd.conf 找到#LoadModule php5_module libexec/apache2/libphp5.so, 去掉#2.把/etc/php.ini.default复制并重命名/ect/php.ini sudo cp /etc/php.ini.default /etc/php.i
MySQL utf8mb4 字符集:支持 emoji 表情符号 转载地址:http://www.linuxidc.com/Linux/2013-05/84360.htm我用他的方法解决了问题,亲测可用,不要用Nnvicat for Mysql去查询编码,在服务器中以root命令进入mysql,用show variables like 'char%';命令查询的编码才是最准确的.
java.util.NoSuchElementException: Timeout waiting for idle object 出现这个问题第一个想法就是连接池的参数设置问题,把最大连接数量设置大一些就行了,但是我就一个客服端访问服务器,连接池连接数量不可能会不够用.我的项目架构是spring mvc+hibernate,用spring管理事物.分析之后肯定是dao层获取的session没有close掉.最后解决方法:把sessionFactory.openSession()改成sessionFactory.g
MyEclipse 2014跟2015破解 最近一直在弄后台开发,之前用idea感觉用的很不习惯,于是就换了myeclipse,两年多没有用myeclipse了,版本都很高了,记得我们之前用myeclipse8.5版本的时候,注册码什么的直接运行一个java程序就行,现在myeclipse高版本的都需要替换本地文件了.于是折腾了将近一个小时,终于解决.运行环境:mac 64位 + MyEclipse Professional
No row with the given identifier exists: 最近在弄一个后台项目,有用到hibernate操作数据库.写hql语句表一对一关联查询的时候报这个错误.受到了csdn上一篇博客的启发,解决了我的问题.他的博客地址:http://blog.csdn.net/eyejava/article/details/1896492 1.使用查询的hql语句 修正前:String hql="from MgjCardCommentEntity
Android启动icon切图大小 我们在给app切图的时候不知道告诉ui启动图标切多大,其实你新建一个android项目就知道应该切多大了.新建一个项目会产生几种大小的启动图标.我把各个文件夹下的ic_launcher.png文件都查看了下大小,得出如下值:1.drawable-hdpi 72*722.drawable-mdpi 48*483.drawable-xhdpi 96*964.draw
Android接入百度自动更新SDK 一:前言公司的app,上传到百度应用市场,然后说必须要接入百度的自动更新sdk才能上架,于是从百度官网上去下载jar包,下载的时候必须要带上数据统计,如果使用自动的jar包,还需要带上广告联盟,坑爹啊,有木有。我下载下来把其他无关的jar包根so文件删掉了.把百度的demo也进行精简了一下.只留下了自动更新必须要用到的.二:效果图如下三:代码如下AutoUp
Android自定义spinner下拉框实现的实现 一:前言本人参考博客:http://blog.csdn.net/jdsjlzx/article/details/41316417 最近在弄一个下拉框,发现Android自带的很难实现我的功能,于是去网上找到一份Demo,但是发现没有封装的好,并且还有很多重复的代码,于是我在这位前辈的基础上进行了修改.并且重新进行了封装,代码变得简单,并且具有可读性.二:实现原理1.就是一
android标题栏上面弹出提示框(二) PopupWindow实现,带动画效果 需求:上次用TextView写了一个从标题栏下面弹出的提示框.android标题栏下面弹出提示框(一) TextView实现,带动画效果, 总在找事情做的产品经理又提出了奇葩的需求。之前在通知栏显示的提示需要在标题栏上面弹出提示框,然后用动画去显示隐藏,并且在大部分Activity上都要显示。问题1:用上次那个TextView隐藏在布局文件中肯定不行了,不然每个activity都要修
android标题栏下面弹出提示框(一) TextView实现,带动画效果 产品经理用的是ios手机,于是android就走上了模仿的道路.做这个东西也走了一些弯路,写一篇博客放在这里,以后自己也可用参考,也方便别人学习。弯路:1.刚开始本来用PopupWindow去实现,做着之后发现如果用popupwindow实现的话,从标题栏下面弹出就比较麻烦.2.最外层的布局本来是用LinearLayout去实现的,然后标题栏跟弹出的那个TextView外边包裹
android模仿58筛选下拉框(PopupWindow实现) 前言:前几天用58同城APP找房子的时候,看到筛选下拉框蛮不错的,然后也有很多朋友需要实现这个功能,于是从网上下载了一个demo,在他的基础上进行修改,花了几个小时对他的代码进行修改,重构,封装.把一些公共的东西抽取出来,选择下拉框那块做成一个工具类,然后通过接口回调回来.效果图如下:1.MainActivity.java 用户点击区域TextView的时候,初始
EventBus实现activity跟fragment交互数据 最近老是听到技术群里面有人提出需求,activity跟fragment交互数据,或者从一个activity跳转到另外一个activity的fragment,所以我给大家介绍一个开源项目,EventBus.在 TextView+Fragment实现底部导航栏 这个Demo的基础上实现fragment跟activity的传参,从设置界面的activity如何跳转到首页的推荐.And
mac下无法识别手机usb问题 一.无论是mac还是windows下连接手机调试android程序,一定要确认手机开启了usb调试.如果没有开启请参考我的步骤. 设置->关于手机->版本号 连续点击版本号5次就激活开发者模式,可能某些国产机界面不一样,但是你找到版本号5击就对了.二.在window下连接手机开发android程序,装手机厂商的驱动,然后在Eclipse Devices中就能看到设备
Android sendevent/getevent 用法 前言:最近在弄一个模拟用户点击屏幕的功能,并且不需要用户点击屏幕,后台自动给输入框赋值,类似pc端按键精灵的功能,在网上找了很多人的资料,写的都不是太详细,一知半解.还要自己慢慢研究.于是我这边写一篇博客整理出来,并且附上demo下载.这两个命令的源码在system/core/toolbox/下,sendevent.c getevent.c 使用这两个命令的前提是手机获取了roo
TextView+Fragment实现底部导航栏 前言:项目第二版刚上线没多久,产品又对需求进行了大改动,以前用的是左滑菜单,现在又要换成底部导航栏,于是今天又苦逼加班了.花了几个小时实现了一个底部导航栏的demo,然后总结一下.写一篇博客.供自己以后参考.也可以给没有做过的朋友进行参考.以后大家有类似的功能就可以在我的demo上就行修改.一.先上效果图: 本来是打算用FragmentTabHost实现的,但是中间那个按钮
Centos7 开放端口 Centos升级到7之后,发现无法使用iptables控制Linuxs的端口,google之后发现Centos 7使用firewalld代替了原来的iptables。下面记录如何使用firewalld开放Linux端口: 开启端口firewall-cmd --zone=public --add-port=80/tcp --permanent
Android获取可存储文件所有路径 引言:大家在做app开发的时候,基本都会保存文件到手机,android存储文件的地方有很多,不像ios一样,只能把文件存储到当前app目录下,并且android手机由于厂家定制了rom,sdcard的路径在不同手机上都会不一样.我这边封装了获取路径的几个方法,放在一个工具类里面.1.获取扩展存储设备2.获取sdcard2外部存储空间3.获取可用的 EMMC 内部存储空间4.获取其他
xprivacy改IMEI XPrivacy是一款基于Xposed框架的模块应用,可以对所有应用可能泄露隐私的权限进行管理,对禁止可能会导致崩溃的应用采取欺骗策略,提供伪造信息。前提你的手机进行root过.我这边使用的是genymotion模拟器。打开XPrivacy Installer出现如下界面:点击框架按钮.安装框架.我这边是已经安装成功之后的截图,还未安装的请点击"按钮/更新
android app反编译 最新在反编译别人的apk,有时候看到别人的app有很炫的效果,就想知道别人是怎么样实现的,顺便自己参考,借鉴一下,下一次如果工作中碰到这个问题就知道怎么实现了.最近恰好放假三天,就研究了一下,一般别人的app都对代码进行了混淆,但是我们还是可以反编译看到代码,只是方法.变量.类名用字母替代了.我这边用到了两套反编译工具,你们可以结合使用.最后我会提供这些工具的下载地址,以下这些反编译工
TextView中的部分文字响应点击事件 TextView是android常用的控件,经常要显示不同文字的大小,颜色,......今天要实现这样这样一个需求,TextView某段内容显示的文字颜色不一样,并且点击区域只能是改变了颜色的字.1.给TextView设置设置文字背景为透明色,不然会有点击选中效果. 我参考的博客地址:http://www.cnblogs.com/sxzheng/p/4245873.html2.
Android调用微信登陆、分享、支付(第一版) 前言:用了微信sdk各种痛苦,感觉比qq sdk调用麻烦多了,回调过于麻烦,还必须要在制定包名下的actvity进行回调,所以我在这里写一篇博客,有这个需求的朋友可以借鉴一下,以后自己别的项目有用到也有个找资料的地方.一.微信登陆分三个步骤:1).微信授权登陆2).根据授权登陆code 获取该用户token3).根据token获取用户资料4).接收微信的请求及返回值
app引导页(背景图片切换加各个页面动画效果) 前言:不知不觉中又加班到了10点半,整个启动页面做了一天多的时间,一共有三个页面,每个页面都有动画效果,动画效果调试起来麻烦,既要跟ios统一,又要匹配各种不同的手机,然后产品经理还有可能在中途改需求,程序员各种苦逼有木有,在这个过程中也学到了蛮多东西的,所以写一篇博客跟大家分享一下.1.显示三个页面的Activity 用view pager去加载三个fragment实现,控制点点点
mac下安装tomcat 在window下面搭建tomcat环境很简单,那是因为我们不熟悉mac系统,当我们习惯了命令行的时候,也是so easy,只要通过以下几个步骤就可以解决,本人亲测可用,不会可以留言.1.进入apche官网 http://tomcat.apache.org/download-80.cgi 选中“Core下的” tar.gz (pgp, md5, sha1)下载2.