Android核心
文章平均质量分 72
FynnJason
Android 知识库
展开
-
Android6.0权限快速申请(基于RxJava2更优雅)
一、前言前言?哪来那么多废话,直接进入正题!二、需要申请的权限咳咳咳,进入正题前,我们还是先了解一下哪些权限是Android6.0后需要手动申请的吧,对症下药,才是王道嘛! group:android.permission-group.CONTACTS (手机联系人相关的权限) permission:android.permission.WRITE_CONTACTS perm原创 2017-05-27 12:03:10 · 1596 阅读 · 0 评论 -
androidStudio升级到2.3之后新建Activity布局变成了约束(ConstraintLayout)布局
1.如上图,as升级到2.3之后,新建布局默认变成了约束布局2.在as安装目录\plugins\Android\lib\templates\activities\common\root\res\layout下,找到simple.xml.ftl文件3.用以下布局替换 xmlns:tools="http://schemas.android.com/tools" andr原创 2017-03-27 17:33:45 · 1596 阅读 · 0 评论 -
Android Studio快捷键之相见恨晚的操作锦集
作为一个Android开发者,最常使用的就是Android Studio了,我在这里声明Android Studio比Eclipse好用100倍,不服来辩。本文用于纪录Android Studio中相见恨晚的操作,阅读本文大概需要不确定时间。(你难道就不边读边试试?)我会用尽量简单明了的语言介绍。PS:多图,流量用户慎入。为了方便 老读者 阅读,我会将更新内容放在开头。新用户 可以直接跳过转载 2016-12-20 21:53:49 · 561 阅读 · 0 评论 -
Android右滑关闭当前Activity
转载请注明出处:meijian531161724常常可以看到,很多Android应用都有这么一个功能,就是滑动关闭Activity,比如微信,CSDN移动端,百度贴吧移动端等。我自己也想写个滑动关闭Activity,最近事情没有那么多,我就google了一下,查看了一下实现滑动关闭Activity的实现方法,其中,有个思路,我觉得很不错,因此,在这里,我通过别人的思路,自己实现了一下滑原创 2016-12-21 21:50:34 · 4045 阅读 · 2 评论 -
Android自定义Dialog实现弹出二维码效果
做Android应用中,最缺少不了的就是自定义Dialog,对于系统默认提供的Dialog样式,一般都不复合我们应用的样式。 自定义Dialog需要3步骤即可: 1、主要的重写Dialog的Java类 2、自定义布局文件、并设置Dialog Theme,在style.xml文件中加一个即可 3、使用方法一、创建CustomPopDialog2.java类import a原创 2016-11-26 23:02:15 · 2984 阅读 · 0 评论 -
入门级:GitHub和Git超超超详细使用教程!
GitHub和Git入门考虑到大家以前可能对版本控制工具和Linux命令行工具都不了解,我写了一个简单的博客来让大家学会入门使用方法。GitHub的简单使用第一步 创建GitHub账号1. 打开GitHub官网。2. 点击绿色按钮Sign up for GitHub,填写用户名,邮件地址和密码。注意:用户名只能包含字母和"-"字符密码至少包含一个字母,一原创 2016-12-08 19:05:58 · 157630 阅读 · 15 评论 -
最全面和简单适配屏幕工具AutoLayout的使用教程!
万能适配器,AutoLayout使用!前言:每当我们写好代码,调试布局会发现,每款手机显示的布局效果有时候不尽人意,这是因为我们在写代码时,只针对了调试机型屏幕做了设计,而没有考虑到每个手机适配的问题,虽然大家都知道使用dp,但是并没能完全解决问题,而且在美工小伙伴也不会设计dp的图出来给你作为参考。今天就给大家介绍一款适配,来自鸿洋大神之手的工具AutoLayout。1添加依赖原创 2016-12-07 22:13:25 · 4807 阅读 · 1 评论 -
Android中如何简单的做单元测试
单元测试单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。例如,你可能把一个很大的值放入一个有序list 中去,然后确认该值出现在list 的尾部。或者,你可能会从字符串中删除匹配某种模式的字符,然后确认字符串确实不再包含这些字符了。基于JUnit 来进行测原创 2016-11-24 22:51:11 · 4117 阅读 · 0 评论 -
Android中快速实现自定义字体!
文章目的:快速入门Android中自定义各种字体!前言:我们都知道,Android中默认的字体是黑体,而大多数app也都是使用的这种字体,但我们发现,大多数app中,个别地方字体非常好看,例如app的标题栏,菜单栏等地方,那他们是怎么做到的呢?有两种方式,第一是图片来代替文字,第二,就是今天我要教大家的自定义字体。开发环境:Android Studio 2.2.2c原创 2016-11-10 22:47:33 · 11639 阅读 · 1 评论 -
Android中快速入门RecyclerView
PS:文章末尾有案例下载哦!RecyclerView 使用RecyclerView 是 android-support-v7包中的一个控件,是一个强大的列表展示滑动组件,它的原理与listView有很多相似的地方,都是维护少量的View来进行显示大量的数据,不过RecyclerView控件比ListView更加高级并且更加灵活。一、RecycleView的优点:提供原创 2016-11-24 22:39:38 · 379 阅读 · 0 评论 -
Android中如何做Monkey测试
转载请注明出处!索引Monkey的介绍Monkey基本使用Monkey命令参考Monkey测试信息截取CRASHANRMonkeyScript脚本格式常用API简单案例Monkey案例实践Monkey的介绍Monkey是一个命令行工具,可以运行在模拟器里或实际设备中,使用安卓调试桥(adb)来运行它,向系统发送伪随机的用户事件流,原创 2016-11-23 21:57:41 · 13011 阅读 · 0 评论 -
Android Design Support Library(三)用CoordinatorLayout实现Toolbar隐藏和折叠
此文的代码在 Android Design Support Library(一)用TabLayout实现类似网易选项卡动态滑动效果代码的基础上进行修改,如果你没有看过本系列的第一篇文章最好先看一看。CoordinatorLayout是Android Design Support Library中比较难的控件,顾名思义,它是用来组织它的子views之间协作的一个父view。Coordinator转载 2016-12-05 23:11:39 · 599 阅读 · 0 评论 -
Android Design Support Library(二)用NavigationView实现抽屉菜单界面
NavigationView在MD设计中非常重要,之前Google也提出了使用DrawerLayout来实现导航抽屉。这次,在Android Design Support Library中,Google提供了NavigationView来实现导航菜单界面。这次我们写的代码在Android用TabLayout实现类似网易选项卡动态滑动效果这篇文章代码的基础上进行修改,所以最好先看看上面这篇文章转载 2016-12-05 23:10:15 · 631 阅读 · 0 评论 -
Android Design Support Library(一)用TabLayout实现类似网易选项卡动态滑动效果
这里我们用TabLayout来实现这一效果。TabLayout是Android Design Support Library库中的控件。Google在2015的IO大会上,给我们带来了更加详细的Material Design设计规范,同时,也给我们带来了全新的Android Design Support Library,在这个support库里面,Google给我们提供了更加规范的MD设计风格转载 2016-12-05 23:03:43 · 625 阅读 · 0 评论 -
FindBugs:简单介绍与使用
简介Findbugs是一个静态分析工具,它检查类或者JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题。Findbugs自带检测器,其中有60余种Bad practice,80余种Correctness,1种 Internationalization,12种Malicious code vulnerability,27种Multithreaded correctness,23种Per原创 2016-12-12 22:24:19 · 11461 阅读 · 1 评论 -
android调用qq聊天功能
String url="mqqwpa://im/chat?chat_type=wpa&uin=2853700237";startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url))); 会弹出QQ聊天界面 , 但是需要添加好友,才能聊天。 可以设置临时会话功能,就不需要添加好友了。1、打开QQ推广页面,原创 2017-03-27 18:27:24 · 1104 阅读 · 0 评论 -
Android6.0有哪些权限需要手动申请的
Dangerous Permissions:group:android.permission-group.CONTACTS (手机联系人相关的权限) permission:android.permission.WRITE_CONTACTS permission:android.permission.GET_ACCOUNTS permission:android.permission原创 2017-03-28 11:03:14 · 1710 阅读 · 0 评论 -
Android中全屏Dialog的实现
Dialog是APP开发中常用的控件,同Activity类似,拥有独立的Window窗口,但是Dialog跟Activity还是有一定区别的,最明显的就是:默认情况下Dialog不是全屏的,所以布局实现不如Activity舒服,比如顶部对齐,底部对齐、边距、宽度、高度等。如果将Dialog定义成全屏的就会省去很多问题,可以完全按照常用的布局方式来处理。网上实现方式有不少,一般情况下也都能奏效,不过原创 2017-04-07 13:54:03 · 5993 阅读 · 1 评论 -
Retrofit2+RxJava2依赖包一览
为了方便新项目快速导包,一次性记录下来。 依赖包版本号可以自寻搜索最新的来替换即可。RxJava2相关: compile ‘io.reactivex.rxjava2:rxjava:2.0.1’ compile ‘io.reactivex.rxjava2:rxandroid:2.0.1’Retrofit2相关: //retrofit compile ‘原创 2017-05-08 15:44:44 · 1774 阅读 · 0 评论 -
WebView加载HTML格式网页
简单配置WebSetting实现WebView加载HTML格式数据。原创 2017-05-06 19:47:03 · 591 阅读 · 0 评论 -
Android DataBinding(数据绑定)详解(二)
前言上一节,我们对DataBinding进行了简单的了解和使用,相信你已经有了基本的认识。这一节,我们将对DataBinding的初始化原理进行学习,当然我们不做深度的解析,毕竟,大多数的朋友们更关注的是如何将它运用到项目中。 高能君:前方高能,内容可能枯燥无味,感兴趣的朋友可以了解一下,不感兴趣的朋友赶紧跳过进入下一节吧。基本原理android.bindingBRBinding类当我原创 2017-05-11 10:25:32 · 1296 阅读 · 1 评论 -
Android DataBinding(数据绑定)详解(一)
Android DataBinding,在如今来看已经不算陌生,在网上也多多少少有好的文章介绍它,很多朋友早就耳闻它的大名,通过学习并运用在自己的项目中。那今天为什么我还要再写一个DataBinding的教程呢?相信很多朋友和我一样,在学习中发现,网上大部分的教程都存在不同的缺陷,要么内容不完整,要么就是没有系统化的讲解方向。所以针对这些问题,我写下这个教程,帮助入门的朋友们原创 2017-05-11 01:44:17 · 3069 阅读 · 0 评论 -
Android中xml tools属性详解
第一部分安卓开发中,在写布局代码的时候,ide可以看到布局的预览效果。但是有些效果则必须在运行之后才能看见,比如这种情况:TextView在xml中没有设置任何字符,而是在activity中设置了text。因此为了在ide中预览效果,你必须在xml中为TextView控件设置android:text属性 android:id="@+id/text_main" a转载 2017-04-20 09:09:50 · 629 阅读 · 0 评论 -
Android px、dp、sp之间相互转换
dp(dip): device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。dp也就是dip,这个和sp基本类似。如果设置表示长度、高度等属性时可以使用dp 或sp。但如果设置字体,需要使用sp。dp是与密度无关,sp除了与密度无关外,还与scale无关。如果屏幕密原创 2017-03-17 14:24:35 · 529 阅读 · 0 评论 -
Android中WebView使用和WebSettings的属性
1. 打开网页时不调用系统浏览器, 而是在本WebView中显示:mWebView.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(u原创 2017-03-16 15:38:01 · 3786 阅读 · 0 评论 -
解决Android Studio无法安装app到小米手机
解决方式:1.登录小米账号(必须)2.进入开发者选项中:打开USB调试,关闭MUI优化(需重启手机)3.绝对解决你的烦恼,解决的朋友点个赞,评论一下让更多朋友相信。。。原创 2017-03-16 15:20:37 · 5220 阅读 · 1 评论 -
Android的Finish后的代码继续执行
测试:[java] view plain copy @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activi原创 2017-03-16 09:48:47 · 1655 阅读 · 0 评论 -
Android Studio手动快速Build APK
不知道是不是个人问题, 使用 install run 功能之后, 修改逻辑代码,偶尔会出现不生效的情况; 就是代码,明明改了,但是执行结果却和之前的一样;但是,xml布局文件,修改之后,效果真的很明显,而且gradle速度也非常快;本文,不讨论怎么如何开启 守护进程,如何开启 并行编译; 因为这对我一点卵用都没有, 可能需要四路泰坦这样的神机, 才能体现效果吧;原创 2017-03-16 09:43:07 · 4781 阅读 · 0 评论 -
android Intent 传递 List 利用Serializable
Intent是Activity与Activity之间,Activity与Service之间传递参数的介质 Intent.putExtras(key, value)几乎可以包括各种类型的值,但是却没有类似List之类的传递参数 再加班无聊的时候,我试了试,发现可以把list强转成Serializable类型,然后通过putExtras(key, (Serializab原创 2017-03-25 15:05:24 · 1011 阅读 · 0 评论 -
一分钟了解Android屏幕 ldpi mdpi hdpi xhdpi
原创 2017-03-25 11:18:49 · 647 阅读 · 0 评论 -
Android Studio 点击运行,找不到夜神模拟器的解决办法
找到夜神模拟器的安装目录,我的安装目录是: D:/Program Files/NoxVM/Nox/bin/进入控制台CMD,转到安装目录 cd D:/Program Files/NoxVM/Nox/bin/执行命令: nox_adb.exe connect 127.0.0.1:62001然后再运行看看,就有了原创 2017-03-25 10:08:33 · 10116 阅读 · 5 评论 -
Android中Dialog的用法
我们在平时做开发的时候,免不了会用到各种各样的对话框,相信有过其他平台开发经验的朋友都会知道,大部分的平台都只提供了几个最简单的实现,如果我们想实现自己特定需求的对话框,大家可能首先会想到,通过继承等方式,重写我们自己的对话框。当然,这也是不失为一个不错的解决方式,但是一般的情况却是这样,我们重写的对话框,也许只在一个特定的地方会用到,为了这一次的使用,而去创建一个新类,往往有点杀鸡用牛刀的感觉,原创 2017-04-07 13:58:14 · 523 阅读 · 0 评论 -
Mosby MVP模式学习和教程,使用文档
索引入门MVP简介Mosby简介Hello MVP WorldMvpPresenter的基类基础LCE视图MvpLceActivity和MvpLceFragmentViewState简介拓展思考入门MVP简介MVP的出发点是关注点分离,将视图和业务逻辑解耦。Model-View-Presenter三个部分可以简单理解为:M原创 2016-11-21 21:58:26 · 3257 阅读 · 0 评论 -
Android内存优化总结
1、追查内存的方法第一步:使用lint lint会提醒你很多使用不得当的地方,主要会集中再这么几个地方 (1)handler等长周期匿名内部类的使用,具体原因下文表 (2)数据结构的优化,hashmap向稀疏数组的优化 (3)未使用的图片资源当然li转载 2016-12-03 00:13:09 · 368 阅读 · 0 评论 -
Android一些你需要知道的布局优化技巧
今天分享一些layout布局书写中的一些技巧,希望看过之后你也一样可以写出性价比高的布局。我个人的目标是用最少的View写出一样效果的布局。因为我相信View的数量减少伴随着的就是层级的减少。从而达到结构清晰,渲染速度快的效果。顺着这个逻辑,我将优化分为重用、合并、按需载入。1重用 标签可以在一个布局中引入另外一个布局,这个的好处显而易见。类似于我们经常用到的工转载 2016-11-20 20:45:28 · 560 阅读 · 0 评论 -
Android中AndroidManifest清单文件以及权限详解!
每个Android应用都需要一个名为AndroidManifest.xml的程序清单文件,这个清单文件名是固定的并且放在每个Android应用的根目录下。它定义了该应用对于Android系统来说一些非常重要的信息。Android系统需要这些信息才能正常运行该应用。Android程序清单文件主要具有下面作用:· 它给应用程序Java包命名,这个包名作为应用程序唯一标识符。·原创 2016-11-13 23:35:48 · 4814 阅读 · 0 评论 -
Andorid中几种简单又常见的ListView的优化方案!
Android中的ListView应该算是布局中几种最常用的组件之一了,使用也十分方便,下面将介绍ListView几种比较常见的优化方法:首先我们给出一个没有任何优化的Listview的Adapter类,我们这里都继承自BaseAdapter,这里我们使用一个包含100个字符串的List集合来作为ListView的项目所要显示的内容,每一个条目都是一个自定义的组件,这个组件中只包含一个te原创 2016-11-13 23:27:37 · 672 阅读 · 0 评论 -
WebView详解与简单实现Android与H5互调
为什么学习与H5互调微信,QQ空间等大量软件都内嵌了H5,不得不说是一种趋势。Android与H5互调可以让我们的实现混合开发,至于混合开发就是在一个App中内嵌一个轻量级的浏览器,一部分原生的功能改为Html 5来开发。优势:使用H5实现的功能能够在不升级App的情况下动态更新,而且可以在Android或iOS的App上同时运行,节约了成本,提高了开发效率。原理:转载 2016-11-16 22:48:35 · 438 阅读 · 0 评论 -
Android中快速自定义圆形ImageView图形!
一、问题在哪里?问题来源于app开发中一个很常见的场景——用户头像要展示成圆的: 二、怎么搞?机智的我,第一想法就是,切一张中间圆形透明、四周与底色相同、尺寸与头像相同的蒙板图片,盖在头像上不就完事了嘛,哈哈哈!在背景纯色的前提下,这的确能简单解决问题,但是如果背景没有这么简单呢?在这种不规则背景下,有两个问题:1)转载 2016-11-12 22:36:28 · 21625 阅读 · 9 评论 -
Android四大组件之一,内容提供器Content Provider详解
转自:http://blog.csdn.net/bingjianIT/article/details/51865650内容提供器(Content Provider)主要用于在不同的应用程序之间共享数据,虽然Android提供的文件存储和SharePreferences都可以设置全局读写模式共享数据,但由于安全性问题,已经在Android4.2中被废弃。内容提供器将提供一种安全的数据共享转载 2016-11-12 22:35:00 · 538 阅读 · 0 评论