Android
掉头发程序员
这个作者很懒,什么都没留下…
展开
-
报错:Could not find lint.jar (com.android.tools.lint:lint:26.1.2).
遇到as工具抽风,就比较难了不幸,今天又遇到了,编译代码(前天 都还编译好好的:)时出现了如下报错Could not find lint.jar (com.android.tools.lint:lint:26.1.2).Searched in the following locations: https://jcenter.bintray.com/com/android/tools/...原创 2019-12-05 19:00:47 · 887 阅读 · 0 评论 -
retrofit在使用过程中所遇到的问题点
retrofit已经出来2年了,网上关于介绍的信息也已经很多了!这里说下我在使用retrofit时所遇到的问题。第一个问题:导入retrofit相关的依赖存在的问题 问题:More than one file was found with OS independent path ‘META-INF/rxjava.properties’ 解决方案:1,一般都会直接过略掉相同存...原创 2018-06-29 11:06:13 · 1654 阅读 · 0 评论 -
解析异步消息处理机制
在平时的工作中,难免会涉及到异步消息的处理,需要从子线程回到主线程去工作!这个时候就需要采用异步工作了。 简单点的有: 第一种:直接通过runOnUiThread从只线程回到主线程runOnUiThread(new Runnable() { @Override public void run() { } ...原创 2018-04-01 15:59:24 · 1277 阅读 · 0 评论 -
调用系统相机拍照和选择系统相册-适配7.0以上系统
现在很多apk都有调用系统相机进行拍照和选择系统相册,GitHub和各大网站都有很多封装的,这里就不zb了! 直接上代码吧:拍照和选择系统相册都适配了7.0以上系统,代码都有注释“ private static final int TAKE_PHONE = 1; private static final int CHOOSE_PHONE = 2; private But...原创 2018-04-01 10:58:35 · 858 阅读 · 0 评论 -
程序运行时权限申请及targetSdkVersion的区别
为什么要在说权限申请的时候,说targetSdkVersion呢!其实是有原因的,因为目标版本的值的修改,对权限的申请检查是有很大的影响! 例如当targetSdkVersion版本小于23(6.0)的时候,其在编译的时候,不会对权限申请去进行判断,只有在运行过程中才会知道。 当targetSdkVersion大于等于23的时候,就会在编译时候检查代码是否有申请权限的判断。也就会有如下提示:...原创 2018-03-21 20:10:48 · 3596 阅读 · 0 评论 -
浅谈android多渠道打包和隐藏签名文件
我们知道,如果apk需要发布到多个平台,并且每个需要发布到每个平台上面的apk名称及其applicationid不一样的话,那么就需要运用到多渠道打包了! 多渠道打包 实际上也是打的正式渠道的包!所以这时必须产生正式签名的包! 今天说一种在build.gradle文件中隐藏签名参数的做法: 直接上图吧: /*正式apk签名*/ signing...原创 2018-03-25 17:57:28 · 651 阅读 · 0 评论 -
小知识:设置10位时间戳及滑动条颜色及位置改变
小知识:就直接上代码了 正常时间戳是13位:long timeStampSec = System.currentTimeMillis()/1000;String timestamp = String.format("%010d", timeStampSec);设置滑动条颜色;<ScrollView android:paddingLeft="10dp"...原创 2018-03-30 18:05:46 · 381 阅读 · 0 评论 -
Android debug调试之特殊情况下的调试
第一点:debug调试之for循环下的调试 当调试for循环的时候,只需要调试到 i 等于某个具体的值的时候,如果一步一步的来调试的话,是相当费时间的.这时候就需要用到debug调试中的for循环调试 示例调试代码如下: for (int i = 0; i < 10 ; i++) { Log.e("Tag","this is ...原创 2018-02-23 12:07:46 · 412 阅读 · 0 评论 -
android 安装apk对不同版本的要求
android手机越往后,对权限的要求越来越高!其中安装apk就是这样.以下说下在android7.0手机上安装apk的具体操作:第一步:在res资源文件下,新建xml文件夹,xml文件夹下命名file_paths资源文件,其写法如下:name 可以自定义<?xml version="1.0" encoding="utf-8"?><paths xmlns:and...原创 2018-03-08 14:26:17 · 2180 阅读 · 0 评论 -
Android中的本地动态广播
为什么要写这篇文章呢!是因为在Android8.0及以后,是不允许存在静态广播的.静态广播会失效。所以才来写这篇基础文章写广播首先注意几点: 1,在广播接收器中,onReceive()方法中,不要添加过多的逻辑或者进行任何的耗时操作。因为在广播接收器中是不允许开启线程的,当onReceive()方法运行了较长时间而且没有结束时,程序就会报错。2,解决广播的安全性问题,其需要使用本地广播。本地广播只原创 2018-01-16 08:59:55 · 633 阅读 · 0 评论 -
Android中常见的限定符
在Android中,因一些特殊的情况,需要部分资源在不同的情况去加载,这就需要限定符在不同情况下去做限制. 其常见的限定符如下图:例如:还有些最小宽度限定符:最小宽度限定符允许我们对屏幕的宽度指定一个最小值(以dp为单位),然后以这个最小值为临界点,屏幕宽度大于这个值的设备就加载一个布局,屏幕宽度小于这个值的设备就加载另外一个布局。 如:在res目录下新建layout-原创 2018-01-14 20:48:38 · 501 阅读 · 0 评论 -
android开发使用Gradle projects开发小技巧
感谢博主 http://m.blog.csdn.net/ycarl/article/details/74439495 写了这么好一篇文章,我就不重复造轮子了,在此引用了! 此说的Gradle是在每个项目中,在最右边中Gradle的使用,如下图使用 这样后,我们就可以获得其签名相关的信息了: 如下图: 得到的签名信息如下: 运行正式APK,平时我们运行run都是debug版本的,如下图原创 2017-05-21 18:30:14 · 764 阅读 · 0 评论 -
android5.0的drawerLayout,toolBar,FloatingActionButton,NavigationView的实现
在写这篇文章之前,首先得感谢其他技术大咖,我是站在巨人的肩膀上才完成这篇文章的! 感谢: http://blog.csdn.net/u012702547/article/details/51253222 http://blog.csdn.net/siyemuzi/article/details/53308085 http://www.jcodecraeer.com/a/anzhuokaifa原创 2017-06-14 10:57:44 · 573 阅读 · 0 评论 -
Android开发基本常识及技巧
在平时的开发中,总免不了有些一定需要做的事情,且很容易掉到坑里:1,按照如下方式使用本地的aar文件dependencies { compile(name:'你的aar文件的名称', ext:'aar') } repositories{ flatDir{ dirs 'libs' //aar包的原创 2017-04-04 17:50:57 · 1025 阅读 · 0 评论 -
Android控件架构
Android的控件架构在android中,控件常被分为2类,即ViewGroup控件和View控件!ViewGroup控件作为父控件可以包含多个View控件,并管理其包含的View控件。通过ViewGroup,整个界面上的控件形成了一个树形结构,即控件树,上层控件负责下层子控件的测量和绘制,并传递交互事件!如下图:View树结构 所以我们通常在Activity中使用的findViewB...原创 2018-06-25 22:32:45 · 517 阅读 · 0 评论 -
android下的modeul下的build_gradle详解
最近在导入别人的羡慕的时候,总是报各种编译SDK版本不兼容,buildTools版本过低,以及目标版本等问题: 其: apply plugin: ‘com.android.application’:声明是Android程序 compilesdkVersion 24:指定编译SDK版本 buildToolsVersion ‘25.0.0’ : buildTools的版本 minSdkVe原创 2016-11-14 20:55:16 · 519 阅读 · 0 评论 -
Android Resource的使用和介绍
在Android项目文件里面,主要的资源文件是放在res下,其android资源还可以放在assets目录下(唯一与res同级,其他的资源都是放在res下)!assets文件夹是存放不进行编译加工的原生文件,即该文件夹里面的文件不 会像xml,java文件被预编译,可以存放一些图片,html,js, css,db等文件。直接上图:表格说明目录directory 资源类型resourc...原创 2016-11-17 11:42:09 · 3530 阅读 · 0 评论 -
数据存储之文件存储
这个星期公司没啥事情可做,闲的没啥事做!又温习了一遍数据存储方面的基础东西。 写的东西的效果就是 ,第一次在editText上面输入了数据,在销毁的时候并保存了数据,然后在第二次进来的时候,读取先前的数据,并显示出来!直接上代码,代码上面有注释 @Override protected void onCreate(Bundle savedInstanceState) { ...原创 2018-02-25 17:30:50 · 433 阅读 · 0 评论 -
数据存储之sharedPreferences存储
sharedPreferences是使用键值对的方式来存储数据的,所以在读取的数据的时候,是通过键把相应的值取出来的! 这篇不想讲sharedPreferences的具体使用(网上很多,也很简单),只讲SharedPreferences对象的获取。有三种方式 第一种方法: Context类中的getSharedPreferences()方法,方法指定二个参数,第一个参...原创 2018-02-25 18:56:09 · 460 阅读 · 0 评论 -
数据存储之数据库操作
首先说二点说明:本文重点在代码上,代码每一步都要注释 其次:对于数据库的操作最后的数据查看,可以借助Sqlite expert 工具!同时对于数据库的操作,可以直接编写sql语句执行 以下为代码:数据库的创建及升级public class MyDataBaseHelper extends SQLiteOpenHelper { private Context mContex...原创 2018-03-04 19:55:44 · 360 阅读 · 0 评论 -
GreenDao的使用及升级和遇到的问题
github:https://github.com/greenrobot/greenDAO 对于GreenDao数据库来说,其优点就有很多了!不必赘言!其只做简单的说明GreenDao属于ORM(object Relation Mapping对象关系映射)型数据库,其表现形式就是通过GreenDao将数据库和Bean对象关联起来。换句话说GreenDao中的增删查改都是操作的一个个的对象,而不是...原创 2018-06-08 19:36:04 · 5478 阅读 · 1 评论 -
URL和URI的区别
最近一直很疑惑二者之间的区别:查看了JDK之后,总结了: URL:(Uniform Resoure Locator:统一资源定位器)是WWW页的地址,类 URL 代表一个统一资源定位符,它是指向互联网“资源”的指针。资源可以是简单的文件或目录,也可以是对更为复杂的对象的引用,其组成为: 协议+服务器地址+端口号+路径(文件); 例如:URL url = new URL(“http://loca原创 2016-11-17 21:12:08 · 496 阅读 · 1 评论 -
HashMap之手动拼接请求参数(aa=aa&bb=bb)
在实际的开发中,有时候需要我们拼接参数向后台发起请求,拼接后其格式如下: keyOne=valueOne&keyTwo=valueTwo咋一看感觉,感觉和hashMap的格式有点相近,但是又有点不同.正常的HashMap里面的数据打印出来的格式如下: {keyOne=valueOne, keyTwo=valueTwo}所以我们只需要循环每组hashMap里面的数据,在循环的中间添加&符原创 2018-02-06 10:58:58 · 1445 阅读 · 0 评论 -
HashMap中根据Value值,来获取对应的key值
要新年了,提前祝大家新年快乐,一帆风顺,万事如意,阖家欢乐!上一篇文章中已经说过:HashMap的参数的拼接 http://blog.csdn.net/willba/article/details/79268387这篇主要是说 根据特定的Value值,获取对应的key值,如下//封装假数据HashMapString,String> map = new HashMap();map.原创 2018-02-07 10:15:21 · 13740 阅读 · 0 评论 -
小知识:随机生成26个字母中(一个或多个)的字母
小知识:就直接上代码了,不多说String str = ""; for (int i = 0;i1;i++){ str = str+ (char)(Math.random()*26+'A'); }特别注意的2点: 1, ‘A’ 是随机生成大写的26个随机字母 2, ‘a’ 是随机生成小写的26个随机字母 3, I原创 2018-02-07 15:26:50 · 23065 阅读 · 1 评论 -
仿杀毒软件图标中间部分无限旋转
大家新年好! 现在的杀毒软件,其界面图标做的挺煊的!大致描述就是–整个图片中间的某一块在不停的旋转转动!首先明确一点:要产生这个效果 是必须要二张图片(一张是整体的背景,另外一张是嵌在背景图里面旋转的图片) 首先整体的布局: &lt;FrameLayout android:id="@+id/pj_float_view" android:layo...原创 2018-02-23 14:57:59 · 292 阅读 · 0 评论 -
小知识:更改Toast显示位置的技巧及使子控件超过父控件布局,扩容as运行空间
不知道你是否有过厌烦的感觉,toast弹出的地方总是一样的! 今天教大家改变弹出toast的位置的技巧:Toast toast = Toast.makeText(this, &amp;quot;toast移动位置改变&amp;quot;, Toast.LENGTH_LONG);// 重点是这个方法:显示的方位及距离的偏差 toast.setGravity(Gravity.TOP,10,10);原创 2017-12-14 22:47:06 · 615 阅读 · 0 评论 -
AS上运行eclipse项目以及AS中所依赖纯正的es结构目录时项目的配置
许久未用eclipse开发android项目了,不过大公司做的项目demo都是用eclipse来开发,呵呵哒,今天我就遇到了这个状况! 查找了很多资料,说说自己的总结:探索出了三种方法第一种: 新建一个as项目后,然后file—>new—>import project即可,最后实际上会出现2个project(开启2个窗口) 第二种: 新建一个as项目,然后file—>new —>i原创 2017-11-17 18:48:01 · 593 阅读 · 0 评论 -
ScrollView内容适配及RelativeLayout 水平居中等分和添加等分分割线
好久没写博客了!闲来试着写写博客!以前写水平居中等分时,一般都使用LinearLayout的weight属性,但如果多一层,就要多个视图层次,那如何用RelativeLayout实现?请看代码&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;&amp;lt;RelativeLa原创 2017-03-12 12:27:31 · 2600 阅读 · 0 评论 -
一个界面实现问卷调查和评估结果
首先上图看效果: 这样的在开发中,页时常遇到.第一步:主界面布局视图 选择器就不贴了<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_hei转载 2017-06-12 15:12:10 · 1061 阅读 · 0 评论 -
读取本地文件assets内容
在项目开发的过程中,会遇到很多需要读取本地文件的内容的需求,如读取所有的银行,和读取所有的城市名等等! 如下示意图: 第一步;在main文件下,新建assets文件,并将资源文件bankresource.txt文件导入,如下{"ICBC":"中国工商银行","ABC":"中国农业银行","CCB":"中国建设银行","CMB":"招商银行","CEB":"中国光大银行","CIB":"兴业银行"原创 2017-06-11 22:15:14 · 1683 阅读 · 0 评论 -
利用同一个Activity界面实现二个不同的界面之间的跳转
先看图,再描述 上图的效果中,我们看到是由三个界面组成:点我界面, 设置界面, 自动返回界面组成,并实现了checkBox保存状态和弹出dialog.但是实际上,只用了点我界面和设置界面(和自动返回界面共用一个界面).所以实现如下:分散实现如下 第一步:checkBox的保存状态//直接设置BUtton事件即可解决 <CheckBox android:id="@+id/原创 2017-06-08 15:02:22 · 6402 阅读 · 0 评论 -
android:windowSoftInputMode属性详解
转:http://blog.csdn.net/twoicewoo/article/details/7384398, 转载的这篇博客也是转载的,目前还没有找到原创!一直在寻找原创过程中,谢谢! android:windowSoftInputModeactivity主窗口与软键盘的交互模式,可以用来避免输入法面板遮挡问题,Android1.5后的一个新特性。这个属性能影响两件事情:【一】当有焦点产转载 2017-04-28 15:18:03 · 238 阅读 · 0 评论 -
setBackground,setBackgroundColor,setBackgroundDrawable,setBackgroundResource的使用区别
上面四个方法,在代码中设置其背景颜色,有时候就会傻傻的分不清楚!第一个:setBackground(Drawable background),其参数为一个Drawable对象,目的是设置View的背景图片,获取drawable可以这样获取–getResources().getDrawable(R.drawable.xx)第二个:setBackgroundColor(int color),其参数是一个原创 2017-04-28 10:46:21 · 1987 阅读 · 0 评论 -
APK大小的瘦身的总结:
首先是看了博客:http://blog.csdn.net/sw950729/article/details/64919051 时,觉得大神我就是马云飞写的很有道理,所有自己就自己写了一遍,长话短说: 在实际开发中,特别是多人接手迭代开发的项目中,随着时间的推移,项目会越来越大。所以让项目大小变小是可以如下操作:1,在gradle使用minifyEnabled进行Proguard混淆的配置,可大大原创 2017-04-04 15:46:44 · 1607 阅读 · 0 评论 -
studio开发文件被锁报错解决
在开发中,有时报错,很莫名其妙,不知从何找起! 如下是报错信息:Error:***Timeoutwaitingto lockcp_projclass cachefor buildfile*** 'D:\project\AisenWeiBo\app\build.gradle' (C:\Users\Administrator\.gradle\caches\2.10\scripts\build_2aq0原创 2017-04-02 16:26:10 · 1875 阅读 · 0 评论 -
Android的FragmentTabHost使用(顶部或底部菜单栏)
首先给大家拜个年,祝大伙新年快乐!万事如意! 第一种:通过FragmentTabHost+Fragment来实现其点击顶部实现切换页面的效果!** 第一步:编写布局文件<android.support.v4.app.FragmentTabHost android:layout_width="match_parent" android:layout_height="match_pa原创 2017-01-30 20:38:04 · 6602 阅读 · 0 评论 -
as中apk签名和多渠道打包
转发: http://blog.csdn.net/lamp_zy/article/details/50195113 1.什么是签名:数字签名就是为你的程序打上一种标记,来作为你自己的标识,当别人看到签名的时候会知道它是与你相关的2.为什么要签名防止盗版,app市场可以检测签名未签名的apk无法安装,也没法发布到应用市场包名相同,签名不同的apk无法升级覆盖3.怎么签名bulid-》gener转载 2017-01-12 13:42:57 · 599 阅读 · 0 评论 -
android属性动画详解
先看效果图,再说话! 图中的这些引导条(原点),ui可以给我们提供,我们自己也可以自定义画!1,首先在res下的drawable建立一个Drawable resource file资源文件,给Root element为shape 代码:即可达到如图效果<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://sch原创 2016-12-07 22:09:01 · 612 阅读 · 0 评论 -
sdk目录下的文件
闲来无事!想起了SDK文件下的目录结构!顺便写写~ 我们都知道SDK主要用来存储安卓开发的环境,其意思为 .android:虚拟机创建的文件或项目add-ons:存储google的一些API,一般很少用,存储google地图,google play等一些附加的库!.build-tools:构建项目时用到的工具,其使项目由java-classes-dex(zip rar)-apk进行变化docs:原创 2016-12-07 20:59:14 · 2593 阅读 · 0 评论