- 博客(100)
- 收藏
- 关注
原创 Android面试题汇总(五)
1、请谈谈你对 MVC 和 MVP 的理解?1、MVC是最常用的软件开发架构,MVC代表Model(数据模型)、View(XML)、Controller(Activity)优点是开发效率快,但是随着项目的增大Controller的业务逻辑代码增多会造成臃肿的情况,后期不便维护,所以适合小项目的开发2、MVP,MVP代表Model(数据模型)、View(Activity+XML)、Presenter(P层,业务逻封装),是对于MVC的控制器臃肿问题的优化,抽离Activity中的业务从而减轻Ac
2023-09-27 17:09:57
407
原创 Android面试题汇总(二)
乐观锁:执行任务的时候默认同一时间不会出现其他线程一起处理任务的情况,会处理完任务后看一下数据有没有被修改过悲观锁:执行任务的时候默认同一时间一定有其他线程一起处理任务,在处理任务的时候会直接上锁。
2023-09-14 17:38:31
247
原创 Android面试题汇总(一)
java中的反射机制,是程序运行的时候可以获取和使用到某个类中的所有成员和方法。应用场景:eventBus框架、Gson框架、Retrofit框架、逆向编程。
2023-09-13 18:49:11
260
原创 monkey测试(mac环境下配置adb,INJECT_EV ENTS permission,monkey的使用,Monkey测试结果分析)
一、mac环境下配置adb首先mac环境下AS默认安装环境,可以在下面路径下找到adb:~/Library/Android/sdk/platform-tools步骤一:打开finder,command + shift +g 前往文件夹:输入:~/Library/Android/sdk/platform-tools步骤二:在终端输入如下两条命令: 1....
2019-09-23 18:07:10
569
原创 使用Retrofit+RxJava下载文件并实现APP更新
https://blog.csdn.net/qq_34261214/article/details/81487110#downloadutils
2019-08-01 16:38:24
418
转载 CoordinatorLayout+AppBarLayout+CollapsingToolbarLayout+Toolbar实现渐变透明的状态栏
在之前的一篇博文里面我已经说明了CoordinatorLayout使用过程中遇到的问题,之后又发现结合CollapsingToolbarLayout使用时的另一个问题。CollapsingToolbarLayout里面的ImageView为背景并不能将状态栏覆盖。在网上查的方法感觉比较费劲,自己试了多次之后发现下面的这种处理算是最简单的了。大概的思想是:1.给Activity界面设置主题为透明...
2019-07-02 09:59:36
3572
1
转载 Mac下AndroidStudio常用快捷键整理
因为mac下的androidstudio的快捷键和windows下的不怎么相同,又要重新熟悉一遍,整理记录一下常用的快捷键,也方便自己查找:上下行移动: alt+shift +up/down上下移动整个方法: cmd+shift + up/down删除行:cmd+delete向下复制行:cmd+d扩大缩小选中范围:option+up/down生成结构体:cmd+option...
2019-07-02 09:51:55
1026
1
原创 app@debug/compileClasspath错误
怀揣着对未来对希望,来到新公司当了一次接盘侠!首先这个项目用到的友盟和微信全是不好用的,找的我沸腾了!最后发现开发平台的包名是错误的,或者包名和签名是反着的,具体因为什么我就不说了,改完就算了!然后我前几天一直在改累积项目的问题。突然有一天bug改完了,写新需求,一引包发现app@debug/compileClasspath错误,然后开始的时候寻思是包冲突了也不太像啊,然后百度说我被墙了...
2019-06-12 11:39:12
6071
4
转载 AndroidStudio 代码报错(引入红色),但可正常运行解决方法(4种方式)
一、自带清除缓存点击AndroidStudio菜单File -> Invalidate Caches/Restar… ,在弹出的对话框中点击Invalidate and Restar。等待AS清理并自动重启。二、删除user目录下.AndroidStudio中的文件关闭AndroidStudio,进入C:\Users\xUser.AndroidStudio3.1(3....
2019-04-14 19:52:18
488
原创 安卓升级JDK8 Lambda表达式的使用
1.首先是安装JAVA8 然后把AS的JDK更改成新安装的 然后 都设置成1.8就可以了这个时候app下面的build.gradle compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersio...
2018-12-06 13:52:17
308
原创 android studio 升级踩坑之路
突发奇想,把android studio升级,真是痛不欲生的回忆啊,我把我踩的坑分享出来希望可以帮助大家.......本想着学习一下kotlin,但是在安装完插件时,发现低版本的android studio并不能支付,,,上火啊,于是一不做二不休升级!android studio升级到的版本是3.2.1然后升级SDK,升级gradle 一系列全套升级!1.首先是修改的项目下的b...
2018-12-05 19:24:47
1071
2
原创 android studio 升级3.0后为apk改名字
//给apk添加对应的版本号: applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile if (outputFile != null &&...
2018-12-05 18:14:38
171
转载 Android App Bundles
大部分在应用商店上架过App或者进行过缩包优化的开发者可能都知道,在Android平台上,APK瘦身方面的优化手段其实不多,无非压缩资源、删除无用资源、代码混淆、在线资源库、微信压缩打包工具、插件化等,充其量只是一些裁裁剪剪,并没有从根本上解决安装包过大的问题。 但Google I/O 2018之后,这个问题可能不会再困扰开发者了,因为Google官方推出了一套堪称神器(事实上谷歌官方称...
2018-12-05 18:11:17
228
原创 百度地图注意事项
1.定位到某个位置 private void initLocal(LatLng latLng) { //设定中心点坐标 LatLng cenpt = latLng; // 定义地图状态 MapStatus mMapStatus = new MapStatus.Builder() //要移动的点...
2018-12-04 15:22:38
265
转载 android-Scheme与网页跳转原生的三种方式
什么是 URL Scheme?android中的scheme是一种页面内跳转协议,是一种非常好的实现机制,通过定义自己的scheme协议,可以非常方便跳转app中的各个页面;通过scheme协议,服务器可以定制化告诉App跳转那个页面,可以通过通知栏消息定制化跳转页面,可以通过H5页面跳转页面等。URL Scheme应用场景:客户端应用可以向操作系统注册一个 URL scheme,该 sch...
2018-11-30 11:11:11
1756
转载 java.lang.UnsupportedOperationException
java 异常java.lang.UnsupportedOperationException在项目中采用一个枚举的集合,本人采用Collections中的空集合Collections.emptyList()在添加时发生异常:常见集合如下:private List vacationcategorys = Collections.emptyList();报错误如下:– Encapsulate...
2018-11-26 17:11:34
433
转载 Fragment 生命周期图
1 生命周期两张图Fragment生命周期图:Fragment与Activity生命周期对比图:2 生命周期分析1. 当一个fragment被创建的时候,它会经历以下状态.onAttach() onCreate() onCreateView() onActivityCreated()2. 当这个fragment对用户可见的时候,它会经历以下状态。on...
2018-11-20 10:49:38
149
转载 Activity生命周期
Android官方文档和其他不少资料都对Activity生命周期进行了详细介绍,在结合资料和项目开发过程中遇到的问题,本文将对Activity生命周期进行一次总结。Activity是由Activity栈进管理,当来到一个新的Activity后,此Activity将被加入到Activity栈顶,之前的Activity位于此Activity底部。Acitivity一般意义上有四种状态:1.当A...
2018-11-20 10:48:45
125
转载 快速排序(java实现)
快速排序(java实现)快速排序算法思想:基于分治的思想,是冒泡排序的改进型。首先在数组中选择一个基准点(该基准点的选取可能影响快速排序的效率,后面讲解选取的方法),然后分别从数组的两端扫描数组,设两个指示标志(lo指向起始位置,hi指向末尾),首先从后半部分开始,如果发现有元素比该基准点的值小,就交换lo和hi位置的值,然后从前半部分开始扫秒,发现有元素大于基准点的值,就交换lo和hi位...
2018-11-09 16:21:24
117
转载 Java的clone():深复制与浅复制
1 public class Student implements Cloneable { 2 3 private String name; 4 5 private int age; 6 7 private Professor professor; 8 9 public String getName() {1...
2018-11-09 11:12:57
108
转载 Object.wait()与Object.notify()的用法
Object.wait()与Object.notify()的用法http://www.cnblogs.com/xwdreamer/archive/2012/05/12/2496843.html参考文献:object.wait()和object.notify()和object.notifyall()正文wait、notify和notifyAll方法是Object类的final n...
2018-11-09 10:41:19
134
转载 java native关键字干什么用的?
版权声明:如需转载,敬请标明出处。 https://blog.csdn.net/Aphysia/article/details/80593654今天一不小心跟进Object的源码中,发现一个native关键字,一脸蒙蔽,怎么我从来没有用过。1.// 这是计算对象的hsahcode的方法,涉及到内存地址2.public native int hashCode(); 1.汇...
2018-11-09 10:19:03
150
转载 string对象不可变的原理
ps:主要是其内部使用了private final修饰成员,如果想修改,需要使用到反射技术string方法的修改效果是通过新建StringBuilder来实现的,更老的版本使用StringBuffer,后者是线程安全版本,但效率较低 什么是不可变对象?众所周知, 在Java中, String类是不可变的。那么到底什么是不可变的对象呢? 可以这样认为:如果一个对象,在它创建完成之后,...
2018-10-22 13:19:06
182
转载 Java 如何有效地避免OOM:善于利用软引用和弱引用
Java 如何有效地避免OOM:善于利用软引用和弱引用 想必很多朋友对OOM(OutOfMemory)这个错误不会陌生,而当遇到这种错误如何有效地解决这个问题呢?今天我们就来说一下如何利用软引用和弱引用来有效地解决程序中出现的OOM问题。下面是本文的目录大纲: 一.了解 强引用、软引用、弱引用、虚引用的概念 二.进一步理解软引用和弱引用 三.如何利用软引用和弱引用解决OOM...
2018-10-22 10:38:29
101
转载 GET请求中URL的最大长度限制总结
由于jsonp跨域请求只能通过get请求,url长度根据浏览器及服务器的不同而有不同限制。 若要支持IE的话,最大的长度为2083字符,若是中文字符的话只有2083/9=231个字符。 若是Chrom...关键字: 服务器,浏览器,url长度限制今天在写一个php相应jsonp请求的功能时,发现当url中包含的请求参数过长时会返回414错误。如下图<html&...
2018-10-12 09:44:26
3065
转载 Android Studio UTF-8编码格式设置
本文章主要介绍一下Android Studio UTF-8编码格式设置,由于在开发中编码格式的不同会出现许多问题,因此,在开发之前配置好编码格式,则可以避免很多问题。本文以AndroidStudio3.0为例。在AndroidStudio中,单击File,找到setting,在新打开的窗口里点击Editort再选择File Encodings,我们可以看到默认编码格式是GBK,只需要把所有...
2018-10-12 09:41:51
1652
原创 INSTALL_FAILED_DUPLICATE_PERMISSION 安装失败的问题
今天在开发的时候遇到一个问题app安装的时候android studio报INSTALL_FAILED_DUPLICATE_PERMISSION这个东西,然后把以前自己开发的一个项目卸载了,这个项目成功运行起来了,最后发现是我在做第二个项目的时候permission是复制过去的经过一系列的排查发现如果permission项目,他们的签名不同 是安装补上的.如果他们的权限都是项目的,并且签...
2018-09-18 17:41:42
3787
转载 Could not get unknown property 'jniLibs' for source set 'main' of type
在Android studio 中为了让目录结构中显示出libs对应的目录结构如下:我们需要在 模块对应的build.gradle 文件中添加如下配置:sourceSets{ main{ jniLibs.srcDirs = ['libs'] }}但是,添加完成后报:Could not get unknown property 'jniLibs...
2018-09-12 09:54:18
647
转载 ButterKnife Zelezny 抛出 ArrayIndexOutOfBoundsException
因为布局文件的命名中出现两个下划线导致的。比如@id/+id a__b_c
2018-09-07 15:49:45
104
转载 Android 一个TextView中设置文字不同字体大小和颜色的最完整方法
在做项目的时候,经常会遇到过一行文字有两种颜色。有时候直接会想到用多个TextView来实现。今天就介绍一下更为简单的方法,用一个TextView实现。效果:这几个都实现了一行字有不同颜色,还有两个字体大小也不一样,我们下边一一介绍。首先xml代码:<TextView android:id="@+id/tv1" android:layou...
2018-09-07 15:49:13
38549
1
原创 安卓 xml中 换行 空格 tab 回车
空格 (&#x0020;)Tab (&#x0009;) 回车 (&#x000D;) 换行 (&#x000A;)
2018-09-07 10:07:02
912
转载 Android Studio: Application Installation Failed解决方案
用Android Studio在模拟器上运行程序报了这个错,出这个问题的原因有很多,因此解决方案也有很多,下面放上一些主流的解决方案,可解大部分问题。方案一:请看一下后面有没有提示:Installation error: INSTALL_FAILED_NO_MATCHING_ABI,如果不是一样的那此法可能就无效了。这种情况请直接参考:关于Installation error: INSTALL...
2018-08-30 10:23:07
915
转载 Failed to resolve:com.android.support:appcompat-v7:报错处理
2017年11月17日 12:15:14 阅读数:3761 标签: android gradle 更多个人分类: Android 你在使用android studio时是否也出现过上图的报错,你还在为它的出现烦恼?没问题,看了本文章,我确保你会顺利解决掉它并会很骄傲的认为这只是一个小case级别的报错。我们进入正题吧,先来说下什么时候会出现这种错误:1.当你在用...
2018-08-28 13:29:06
178
转载 安卓 颜色透明度对比表
背景开发的都知道,UI微调都是令人头痛的,尤其是颜色的微调。如果视觉稿直接给颜色值那倒没啥,可怕的是后面还有标了透明度,而且视觉还原后发现颜色太透明了,要你透明度再调调,这才烦人。我总不能记住100个透明度的值吧。一次计算,无数次使用,这文章,稳了。正文Android中的颜色值一般格式是:#AARRGGBB。AA就是透明度值(这里我只聊透明度)。1. 透明度的计算透明度...
2018-08-10 14:52:20
634
转载 NestedScrollView中嵌套ViewPager或RecyclerView出现滑动冲突的解决
NestedScrollView嵌套ViewPager出现的滑动冲突问题描述: ViewPager无法左右滑动, 切无内容显示. 如果有相关Tab与ViewPager相绑定, 会导致Tab切换卡顿.问题布局复原: <android.support.v4.widget.NestedScrollView android:id="@+id/home_scroll_view" ...
2018-06-08 17:08:07
1894
转载 Fragment和ViewPager多层嵌套,容易出现内层fragment某些页面数据丢失
好久没有写博客了,最近项目中发生了一个让人头疼的问题,然后在网上查找到了解决方法:bug描述:外层viewpager装若干外层fragment,其中的某个外层fragment又装个内层viewpager,内存viewpager又装若干内存fragment。当外层的fragmnet来回切换时,导致内层的fragment数据丢失,报RecyclerView: No adapter attached; ...
2018-06-07 14:01:58
950
转载 Android中自定义RatingBar实现星星大小,数量,间距等的设置
前言 系统中自带的RatingBar使用起来非常不方便,并且无法调整合适大小,于是自定义一个可自己调节星星数量,大小,间距等属性的RatingBarDemo展示图片:布局代码如下://(layout)activity_main.xmlRelativeLayout xmlns:android="http://schemas.android.com/apk/res/an
2017-10-17 16:29:21
1950
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人