- 博客(30)
- 资源 (3)
- 收藏
- 关注
原创 productFlavors 中设置appname
flavorDimensions "default" productFlavors { finalProduction { dimension "default" applicationId "me.mladenrakonjac.modernandroidapp" resValue "string", "app_name", "Modern App" } demoProduction { dimensio.
2021-02-10 11:11:21
631
原创 Gradle‘s dependency cache may be corrupt...
从github上下载的项目经常会报如下错误我遇到的情况是在保证能科学上网的情况下,本地中对应版本的gradle有问题,针对此有两种解决方案:方案一:(需保证可以科学上网到电脑的gradle存放路径下,把项目使用的gradle版本删除,然后点击上图的Re-download dependencies and sync project....查看项目使用gradle版本:项目根目录/gradle/wrapper/gradle-wrapper.propertiesgradle在电脑的存放
2020-12-21 18:43:02
397
原创 正则表达式
\d匹配一个数字\w匹配一个字母或数字*表示任意个字符(包括0个)+表示至少一个字符?表示0个或1个字符{n}表示n个字符{n, m}表示n-m个字符[0-9a-zA-Z\_]匹配一个数字,字母或下划线[0-9a-zA-Z\_]+匹配至少由一个数字,字母或下划线组成的字符串[a-zA-Z\_\&][0-9a-zA-Z\_\$]*匹配由字母或下划线、$开头...
2019-05-29 17:57:37
209
原创 window系统使用指令安装apk
1.配置cmd运行adb指令的环境(如果已经有跳过)到sdk目录的platform-tools复制adb.exe,AdbWinApi.dll,AdbWinUsbApi.dll三个文件,如下,win32系统:粘贴到C:\Windows\System32目录下win64系统:除了C:\Windows\System32路径,还需要另外粘贴到C:\Windows\SysWOW64目录下...
2019-05-09 18:28:58
1559
原创 Error:Unable to find method 'com.android.build.gradle.api.BaseVariant.getOutputs()Ljava/util/List; A
旧项目使用androidstudio3.3.2编译,报错原因是butterknife本身版本问题,需要改为使用8.4.0,需要改动的地方如下1.project的build.gradle文件,修改为使用8.4.0,如下2.module:app的build.gradle文件,删除以下(一般写在文件头或文件尾)apply plugin: 'com.jakewharton.butte...
2019-05-09 17:30:30
1156
原创 ndk学习笔记
1、简介(一些相关概念)Android NDK是一组允许你将C或C++嵌入到Android应用中的工具。可用于:1)在平台之间移植应用,用C/C++写的库可以方便的在其他嵌入式的平台上再次使用2)重复使用现有库,或者提供其自己的库供重复使用3)在某些情况下提高性能,特别是像游戏这种计算密集型应用4)代码的保护,apk的java层代码很容易被反编译,而C/C++库反汇难度教大
2017-11-08 17:07:45
355
原创 java中的内存分配
java内存主要包括以下几个区域:1、寄存器:我们在程序中无法控制2、栈:保存基本类型的数据和对象的引用 在函数中定义的一些基本类型的变量数据和对象的引用变量都在函数的栈内存中保存。当变量退出函数或代码块时,java会自动释放内存。3、堆:存放用new产生的数据 堆内存用来存放new创建的对象和数组,是一个运行时数据区。该部分内存,由java虚拟机的自动垃圾回收
2017-11-01 11:08:14
309
原创 Error running app: Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled.
androidstudio中运行报错Error running app: Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled.解决方法:Tools->Android->选择Enable ADB Integration问题解决~
2017-06-02 14:53:26
312
原创 使用代码修改shape的填充颜色solid
如下xml文件: 在代码中修改solid的颜色值,如下:val grad = get_code.background as GradientDrawable grad.setColor(R.color.color_c3c3c3)
2017-05-31 10:44:10
2428
原创 让AndroidStudio提示的时候大小写不敏感
一直用习惯了eclipse,eclipse的提示是大小写不敏感的,androidstudio默认是大小写敏感的,即如果你写Intent写成intent的话,它的提示就不会处理。通过如下设置,让androidstdio的提示编程大小写不敏感:AndroidStudio中,点击File-->Setting,搜索Code Completion,把Case sensitive completion设置
2017-05-25 23:51:51
3249
原创 AnimatedVectorDrawable的简单使用
VectorDrawable是Android5.0新支持的特性,它用来绘制矢量图,矢量图可以在不是清晰度的情况下进行缩放,它的方便之处在于只需要创建一个适量图片就可以在不同分辨率的手机下正常显示。VectorDrawable的绘制和渲染会消耗一定的时间和内存,它比较适合用来画一些扁平的图形。VectorDrawable是用来绘制静态图的,而AnimatedVectorDrawable就是针对V
2017-02-04 16:17:13
1748
原创 androidstudio视频录制和截图功能
因为要录制app操作gif图,群上问了下,才知道原来androidstudio有视频录制和截图的功能。功能入口如图:上面那个icon是截图的,下面那个icon是录制视频的。这两个功能都可以针对真机和模拟器。
2017-01-12 15:19:16
4560
转载 Android的线程和线程池
此篇为《Andoroid开发艺术探索》第11章Android的线程和线程池的读书笔记除了Thread本身以外,在Android中可以扮演线程角色的还有很多,比如AsyncTask和IntentService,同时HandlerThread也是一种特殊的线程。对于AsyncTask来说,它的底层用到了线程池,对于IntentService和HandlerThread来说,它们的底层则直接使用
2016-12-23 00:19:16
348
原创 设计模式——状态模式
首先,给出状态模式的定义:状态模式允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。看完这个定义是不是完全不知所云。。。。还是看下有关实例和相关代码来了解一些这个模式。糖果机的示例我们看下糖果机的相关销售流程图,如下所示:我们可以把这张流程图当成状态图来分析,每个圆圈就是一个状态,而每个箭头都是状态的转换。我们简单介绍下实现一个状态机的步骤:
2016-12-19 00:31:51
471
原创 Your project path contains non-ASCII characters
github上下载的项目,在androidstudio中打开报错Error:(1, 0) Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project to a different dire
2016-07-21 14:28:36
1642
原创 设置ListView item间距
默认ListView的item之间间距是为0的,想要设置ListView的间距可以使用如下语句:android:divider="@android:color/transparent"android:dividerHeight="20sp"这样设的原理是首先把ListView item之间的分割线颜色设置为透明,然后设置分割线的高度实现的。所以这样设置之后ListView默认的分割线也会
2016-06-13 17:05:31
6465
原创 让TextView一行显示并且溢出部分用省略号显示
只需要在TextView中添加如下两个属性即可实现:android:singleLine="true"android:ellipsize="end"
2016-06-13 16:25:20
1711
原创 设置EditText不自动聚焦
如果界面中有EditText的时候,用户打开界面的话EditText就会自动聚焦。如果想取消这种一打开界面EditText就聚焦效果,可在EditText的上级父容器中加入如下代码: android:focusable="true" android:focusableInTouchMode="true"
2016-06-06 15:38:27
2340
原创 让ListView滚动到底部
有时候聊天记录用ListView完成的时候,需要用户打开界面的时候,ListView定位在底部,可用如下代码来实现:gd_listview.setSelection(gd_listview.getBottom());
2016-06-06 15:34:26
713
原创 VirtualBox Unable to load R3 module ......
打开VirtualBox时报如下错误:把C:\Wubdiws\system32\uxtheme.dll的文件替换掉就可以了uxtheme.dll传送门:http://download.csdn.net/detail/c529836078/9481151
2016-05-12 11:16:22
345
原创 genymotion VT-x is disabled in the bios for both all CPU modes
电脑第一次安装genymotion,打开时是显示Unable to start the virtual device.VirtualBox cannot start the virtual device............于是打开VirtualBox,在VirtualBox启动虚拟机,显示VT-x is disabled in the bios for both all CPU modes
2016-05-12 10:55:10
4977
原创 Error:Cause: org/gradle/api/publication/maven/internal/DefaultMavenFactory
今天在androidStudio上导入git上下载的项目,结果报Error:Cause: org/gradle/api/publication/maven/internal/DefaultMavenFactory 解决办法:在你project的build.gradle中,在classpath 'com.github.dcendents:android-maven-plugin:1.
2016-04-18 16:17:47
498
原创 dexposed框架总结
这周研究了阿里巴巴开源的dexposed框架,搞了一下午嘤嘤嘤。想写个总结,但是现在已经下班了。一句话,等我回来~~~~
2016-03-18 18:43:14
2517
原创 AndroidStudio快捷键总结
这篇是不断更新的一篇,以后遇到会不定时上来更新1.查看某个方法被引用的位置:鼠标移至方法名,然后Ctrl+F7
2016-03-17 17:18:24
455
原创 AndroidStudio检测不到手机设备
我的情况是genymotion和真机的设备都检测不到,网上能找到的包括手机开发者选择设置啊,数据线啊,SDK版本下载啊之类的问题都排除之后还是不能,我在网上查好像没看到我遇见的这种问题,但是我经常会遇到这个问题,其实就是因为我习惯一遍听歌一遍敲代码,而且用的是酷狗播放器,而酷狗播放器有个sadb.exe的进程和手机的adb.exe进程有冲突,所以如果遇见这种情况,又刚好你电脑有酷狗的话,可以去进程
2016-03-04 23:03:29
4557
2
转载 Android四大组件——BroadcastReceiver
1.BroadcastReceiver简介BroadcastReceiver本质上是一种全局的监听器,用于监听系统全局的广播消息。每次系统Broadcast事件发生后,系统就会创建对应的BroadcastReceiver的实例,并自动触发它的onReceive()方法,onReceive()方法执行完后,BroadcastReceiver的实例就会被销毁。如果BroadcastReceiv
2016-02-26 15:44:12
433
转载 Android四大组件——Service
本文章为读书笔记,书为《疯狂安卓讲义》。 1.Service的生命周期方法 1)IBinder onBind(Intent intent):该方法是Service子类必须实现的方法。该方法返回一个IBinder对象,应用程序可通过该对象与Service组件通信。 2)void onCreate():当该Servic
2016-02-24 10:10:59
660
转载 四大组件-Activity
1.Activity的生命周期Activity的生命周期是会经常被提及但又会被我经常性遗忘的知识点(没办法,我记忆力就是这么差╮(╯_╰)╭)。所以现在,算是总结回顾和备忘一下Activity的生命周期。Activity的活动状态以Activity栈的形式管理。当前活动的Activity位于栈顶。以下7个Activity生命周期方法:1)onCreate(Bundle savedS
2016-02-22 16:37:46
459
转载 图片处理,三级缓存
此篇文章是通过查找关于“三级缓存”的网络文章之后,自己做的一个总结。如果一个APP中有大量的图片需要展示,如果每次都需要从网络上去加载,那么将耗费大量的流量,而且下载速度的影响也会影响用户体验。这时候,缓存显得尤为重要。这里的三级缓存保存“内存-文件-网络”三层缓存机制:1.内存层(手机内存)内存缓存的有点是速度快,缺点是容量较小。2.文件层(SD卡)文件缓存相对于内存缓存
2016-02-19 17:01:41
4917
转载 Handler及原理
最近找工作,复习知识,把一些面试经常问到的问题整理一下,这篇内容主要参考资料来自《疯狂安卓讲义》这边书。1)Handler:在新启动的线程中发送消息;在主线程中获取、处理消息。2)Message:Handler接收和处理的消息对象3)Looper:每个线程中只能拥有一个Looper。它的loop方法负责读取MessageQueue中的消息,读到信息之后就把消息交给发送该消息的Han
2016-02-15 15:47:36
341
uxtheme.dll
2016-05-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人