Android开发
文章平均质量分 62
大自然D使者
性格:较内向
爱好:编程
生活态度:不虚度每一天
工作情况:很好
受教育状况:大学毕业
展开
-
Windows PowerShell版本查看命令
在Windows PowerShell中查看版本的命令是:$PSVersionTable,具体操作结果如下所示:Windows PowerShell版权所有 (C) Microsoft Corporation。保留所有权利。尝试新的跨平台 PowerShell https://aka.ms/pscore6PS C:\Users\admin> $PSVersionTableName Value----原创 2021-07-28 16:18:03 · 2253 阅读 · 0 评论 -
使用Git从GitHub上拉取工程,同时将更新推送到GitHub上,后续使用类库直接引用GitHub上的项目
在Android的日常开发中,我们免不了要封装自己的类库,以便在不同的项目中使用,封装成类库,确实是非常的方便,但是随着项目的增多,每次做新的项目的时候,我们都需要将类库重新拷贝一份到新的项目中,这样就导致一个问题,一旦发现类库中有问题,那么我们就需要将其他项目中引用该类库的地方全部做一下更改,这就要花费很多的时间了,而且非常的不易维护,因此就需要像使用诸如RxJava这样的第三方库的方式来使用我们的自己类库。 该文章分两个部分来记录如何实现在GitHub上维护我们自己库以及在项...原创 2021-02-07 15:06:38 · 628 阅读 · 0 评论 -
android studio创建签名文件问题
今天在使用android studio创建签名文件的时候出现了如下图的问题:此时需要打开CMD,在命令行中输入上图中提示的命令:C:\Users\UserName>keytool -importkeystore -srckeystore E:\Projects\ReleaseRoot\MobileClient\xxx.jks -destkeystore E:\Projects\ReleaseRoot\MobileClient\xxx.jks -deststoretype pkcs1.原创 2021-01-14 14:15:53 · 985 阅读 · 0 评论 -
Android自定义弹出框
在开发Android项目的过程中,弹出框真的是我们的常见的一种互动式窗体,但是Android系统自带的弹出框往往都不能满足我们的需要,大多数的时候需要我们自定义一种更漂亮的窗体来来展示给用户。接下来是我很久之前用的一个自定义弹出框,记录一下,以便自己日后使用。0、先来一张效果图1、先定义个一个继承自Dialog的自定义弹框CustomDialogimport android.app.Dialog;import android.content.Context;import andro原创 2020-09-16 17:35:17 · 4645 阅读 · 1 评论 -
android studio执行编译后查看class文件路径
这两天在搞热修复的事情,需要用到编译后的class文件,就在build文件中挨个的找,最后终于找到了,这里记录一下。具体路径:项目所在位置\项目工程名字\模块名称\build\intermediates\javac\debug\classes譬如我的项目:E:\Project\JavaRoot\android-stuido_workspace\工程名称\模块名称\build\intermediates\javac\debug\classes在android studio下面查看如下:...原创 2020-09-09 10:28:33 · 6560 阅读 · 0 评论 -
正则表达式速查表
正则表达式速查表字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如,“n”匹配字符“n”。“\n”匹配一个换行符。串行“\\”匹配“\”而“\(”则匹配“(”。 ^ 匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配“\n”或“\r”之后的位置。 $ 匹配输入字符串的结束位置。如果设置了RegExp对象的Multiline属性,$也匹配“\n”或“\r”之前的位置。 *转载 2020-08-20 16:30:29 · 161 阅读 · 0 评论 -
Android自定义圆形ImageView
圆形头像,在Android的开发中经常用到了,度娘搜索也可以看到很多,这里不在过多解释,下面是在度娘上搜出来的一个感觉很好用的,个人收藏一下。效果图:源码:package com.aaron.cellphone.club.support.component;import android.annotation.SuppressLint;import android.content.Context;import android.content.res.TypedArray;impor转载 2020-08-13 12:11:00 · 390 阅读 · 0 评论 -
Java常用的集合容器:HashTable、HashSet、HashMap、ArrayList、LinkedList的区别
在Java的开发中,我们经常用到HashTable、HashSet、HashMap、ArrayList、LinkedList这些集合容器,但是很少关心他们之间的区别,那么它们之间究竟有什么区别呢?其实网上这方面的文章太多了,我这里也就是记录一下,以备后续自己可查。1、HashTable是线程安全的,且是线程同步的,在实现线程同步的时候是不需要手动来实现线程同步的,因此相对效率低。 添加的顺序和保存的顺序是不一致的。 添加的值中是不允许有null值的存在。 底层:HashTable类继承自Dic原创 2020-06-15 23:32:57 · 447 阅读 · 0 评论 -
ListView中嵌套EditText导致数据错乱的解决方案
在Android的开发中,ListView中嵌套EditText,当一个EditText中输入数量以后,因为View的复用关系,经常会导致其中的数据错乱,接下来我们看看这种情况的解决方案(这个问题应该是很长常见的一个问题了,只是最近又开始开发了,之前处理的方法忘记了,这次记录一下,以备以后再次用到的时候查询)。代码如下:public class OutNoBillProductAdapt...原创 2020-04-16 12:49:20 · 546 阅读 · 0 评论 -
ListView中嵌套CheckBox选中状态错乱的解决方案
实现CheckBox的选中状态,一般有两种实现方法:1、设置CheckBox的setOnCheckedChangeListener()监听2、设置CheckBox的setOnClickListener()监听针对这两种实现方法,下面提供两种解决方案:一、通过CheckBox的setOnCheckedChangeListener()监听来实现首先定义一个实体类,该实体类除了定义你...原创 2020-04-14 13:10:30 · 324 阅读 · 0 评论 -
Android GradientDrawable静态使用和动态使用
Android GradientDrawable使用优势: 1. 快速实现一些基本图形(线,矩形,圆,椭圆,圆环) 2. 快速实现一些圆角,渐变,阴影等效果 3. 代替图片设置为View的背景 4. 可以减少apk大小,提升用户下载意愿 5. 还可以减少内存占用 6. 方便修改与维护 基于上面几种优势,我们很多时候都会选择使用android的shape,下...转载 2020-03-29 22:27:14 · 1124 阅读 · 0 评论 -
Android Gradle 3.X 中依赖指令implementation和api的区别
AndroidStudio升级到3.0之后,gradle版本也随之升级到了3.0.0版本。classpath 'com.android.tools.build:gradle:3.0.0'在新建一个Android工程的时候,build.gradle中的依赖默认为implementation,而不是之前的compile。另外,gradle 3.0.0版本以上,还有依赖指令api。本文主要介绍...转载 2019-03-01 13:08:03 · 887 阅读 · 0 评论 -
解决Android项目运行时出现could not install *smartsocket* listener:cannot bind to 127.0.0.1:5037的问题
Android项目运行时出现以下问题:error: could not install *smartsocket* listener: cannot bind to 127.0.0.1:5037: 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 (10048)This application has requested the Runtime to terminate it in an...转载 2018-07-13 17:03:55 · 1284 阅读 · 0 评论 -
Android 系统基本架构解读
Android其本质就是在标准的Linux系统上增加了Java虚拟机Dalvik,并在Dalvik虚拟机上搭建了一个Java的Application Framework,所有的应用程序都是基于Java的Application Framework之上。Android主要应用于ARM平台,但不仅限于ARM,通过编译控制,在X86、MAC等体系结构的机器上同样可以运行。 Android分为...转载 2018-03-13 13:38:42 · 444 阅读 · 0 评论 -
Android中的IPC机制
Android IPC简介IPC是Inter-ProcessCommunication的缩写,含义就是进程间通信或者跨进程通信,是指两个进程之间进行数据交换的过程。那么什么是进程,什么是线程,进程和线程是两个截然不同的概念。在操作系统中,线程是CPU调度的最小单元,同时线程是一种有限的系统资源。而进程指的一个执行单元,在PC和移动设备上指的是一个程序或者一个应用。一个进程可以包含多个线程,因此进程...转载 2018-03-19 12:55:41 · 173 阅读 · 0 评论 -
深入理解Android之四大组件
Android四大组件分别为activity、service、content provider、broadcast receiver。一、android四大组件详解1、activity(1)一个Activity通常就是一个单独的屏幕(窗口)。(2)Activity之间通过Intent进行通信。(3)android应用中每一个Activity都必须要在AndroidManifest.xml配置文件中...转载 2018-03-12 22:16:25 · 359 阅读 · 0 评论 -
深入理解Activity的生命周期
这段时间公司正在招聘Android的开发人员,但是面试下来发现,现在有很多开发者对Activity生命周期还不是很清楚的,因此这里在网上也找了一篇文章,感觉解释的确实不错,转载在这里,以便能够看到我这篇博文,并且对生命周期还不是很熟悉的同学一个参考。 首先我们看一下Activity生命周期的流程图: 相信学习安卓的人对这幅图都很熟悉,这是安卓Activity的生...转载 2018-03-09 13:50:19 · 238 阅读 · 0 评论 -
Android 动画总结
Android 动画分类:传统动画和属性动画。1、传统动画:包括帧动画(FrameAnimation)和补间动画(Tweened Animation)。1.1、帧动画:帧动画是最容易实现的一种动画,这种动画更多的依赖于完善的UI资源,它的原理就是将一张张单独的图片连贯的进行播放,从而在视觉上产生一种动画的效果;有点类似于某些软件制作gif动画的方式。如上图中的京东加载动画,代码要做的事情就是把一幅...转载 2018-03-15 11:07:44 · 202 阅读 · 0 评论 -
Android开发:无法在外置存储上创建文件夹的解决方案
在Android开发的过程中,如果你的项目的targetsdkversion大于等于23,按照以往在外部存储上创建目录的方法(file.mkdirs())肯定一直返回false。这种情况在Android6.0之前都是不存在的,6.0和6.0以后在权限管理方面更加全面,在读写外置存储的时候不仅要在manifest中静态授权,还需要在代码中动态授权。下面我们说在6.0及以后系统中创建文件夹和文件需原创 2017-08-10 14:48:37 · 7801 阅读 · 1 评论 -
Eclipse快捷键大全
Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑ 当前行和上面一行交互位置(同上)Alt+← 前一个编辑的页面Alt+→ 下一个编辑的页面(当然是针对转载 2015-08-19 14:58:20 · 308 阅读 · 0 评论 -
Android 利用命令生成keystore文件
发布Android的APK的时候,我们一般都要使用签名,签名一般有两种方式可以产生,下面是生成keystore文件的两种方式。1、通过Eclipse自带的打包程序生成:这种比较简单,我们这里不再详说。2、通过命令生成:原创 2015-09-02 16:10:41 · 550 阅读 · 0 评论 -
技术牛人的Blog和一些知名的技术网站
技术永无止境,为了掌握更多,我们需要站在技术技术大牛的肩膀上更进一步,CSDN博客牛人:老罗:http://blog.csdn.net/luoshengyang张永业:http://blog.csdn.net/xyz_lmn/郭霖:http://blog.csdn.net/sinyu890807鸿洋:http://blog.csdn.net/lmj623565791咪当我系原创 2015-09-11 16:14:12 · 2566 阅读 · 0 评论 -
Activity四种启动模式(整合)
一、启动模式介绍 启动模式简单地说就是Activity启动时的策略。启动模式有两种设置方式:1、在AndroidManifest.xml中的标签android:launchMode属性设置:启动模式有4种,分别为standard、singleTop、singleTask、singleInstance;2、在代码中设置启动模式:启动一个Activity,需要用到startAct原创 2016-03-18 12:13:09 · 854 阅读 · 0 评论 -
Android 常用的adb命令
1、安装APK(如果加 -r 参数,保留已设定数据,重新安装filename.apk)adb install xxx.apk adb install -r xxx.apk 2、卸载APK(如果加 -k 参数,为卸载软件但是保留配置和缓存文件)adb uninstall xxx.apkadb uninstall -k xxx.apk原创 2016-03-14 15:15:32 · 293 阅读 · 0 评论 -
Android项目利用Ant实现打包功能
在Android项目的开发中,项目完成后打包发布是必不可少的一个步骤,针对企业内部APP,一般不需要多渠道发布,因此只要使用Android自带的ADT来发布APK就可以了。但是每次发布的时候还要输入密码、选择生成文件的的存储路径,这个如果只做一两次还行,如果每次都是用这种方法,那么感觉就比较繁琐了,因此这里我们就介绍使用Ant实现指定位置的打包的介绍。一、安装和配置ant使用Ant打包,那原创 2015-09-20 10:59:50 · 489 阅读 · 0 评论 -
Android系统中蓝牙设备间连接和通信
最近在研究手机通过蓝牙连接另一部蓝牙设备,以达到从另一部蓝牙设备上读取数据的目的。第一步首先自定义一个发现蓝牙设备的广播接收器,下面是详细的代码:package com.test;import android.bluetooth.BluetoothAdapter;import android.bluetooth.BluetoothDevice;import android.原创 2016-05-13 14:29:19 · 1343 阅读 · 0 评论 -
Android开发利器
学习Android开发的同学有福利了,还在为不能下载到最新的SDK需要翻墙而烦恼吗?有了这个网站,你无需烦恼了,这个网站几乎提供了Android开发所需要的一切条件。还在等什么,快来看看吧,说不定你正在寻找的在这个网站里面就已经有了。这个网站也是我在网上查询资料的时候偶然发现的,为了方便android开发的童鞋,特共享出来。网址:http://www.androiddevt原创 2016-05-14 13:23:45 · 366 阅读 · 0 评论 -
Android Https请求详细demo
原文地址:http://itindex.net/detail/51666-android-https-demoAndroid Https详细请求全方案实现,包括HttpUrlConnection及HttpClient方式实现指定证书及信任所有的实现,不多说了,以下代码都经过详细测试,可以直接使用。package com.example.httpstest;import ja转载 2016-05-14 13:34:18 · 3132 阅读 · 1 评论 -
Android开发中WIFI和GPRS网络的切换
在项目的开发中因为要使用到WIFI和GPRS网络的切换,因此就研究了一下通过代码打开WIFI和GPRS的工作。无论是切换WIFI还是切换GPRS网络都需要设置相应的权限,所以需要在AndroidManifest.xml文件中加入一下几行代码。 1、切换WIFI网络public static void toggleWiFi(Context原创 2016-05-08 10:07:30 · 4558 阅读 · 1 评论 -
Eclipse中各种插件下载地址集锦
1、SVN下载地址官网:http://subclipse.tigris.org/ 插件下载链接(http://subclipse.tigris.org/update_1.10.x)原创 2015-01-21 08:36:50 · 607 阅读 · 0 评论 -
Android开发中常用到的一些功能
一、修改TextView中部分文字的颜色tvResetPwd.setText(getResources().getString(R.string.textview_reset_pwd)); SpannableStringBuilder builder = new SpannableStringBuilder(tvResetPwd.getText().toString());原创 2016-03-14 11:29:36 · 445 阅读 · 0 评论 -
Android string.xml 显示特殊符
在Android的项目中要在string.xml 中显示特殊符号(如@号冒号等),直接写有时候不行,那么可以考虑使用ASCII码进行显示、在XML中空格符不是用HMTL中的表示、而是用编码表示。以下为常见的ASCII十进制交换编码:@ 对应 -----@-----: 对应 -----:----- 对应 -----空格---转载 2016-09-28 10:58:30 · 651 阅读 · 0 评论 -
Android Studio开发时多工程引用相同Library项目的配置方法
在使用Android Studio开发的时候,如遇到多个项目引用同一个library(源码)的情况时,会遇到在每个项目中都要有一套library的代码的情况,对还在开发和维护中的library需要频繁的修改,这对同步就很麻烦了,为了解决这个问题,出现了下面的解决方案。首先:新建一个类库工程,工程名为AppLibs.Dev。在该类库中包含一个公共的类库appLibs原创 2017-03-13 13:47:45 · 3132 阅读 · 3 评论 -
Android Studio使用命令行打包配置
在使用Android Studio开发时,开发完成以后,打包发布是必不可少的一步,但是每次手动执行打包操作,无疑是一个效率较低的工作,因此就研究了一下命令行打包的过程,先简单记录如下。使用命令行打包首先需要配置项目中APP模块下面的build.gradle文件,详细配置如下。/** 证书信息 */signingConfigs { config { keyAlias 'xxx原创 2017-03-17 10:54:03 · 3561 阅读 · 0 评论 -
Android Studio常用快捷键
00、Ctrl+P,可以显示参数信息01、Ctrl+D: 集合了复制和粘贴两个操作,如果有选中的部分就复制选中的部分,并在选中部分的后面粘贴出来,如果没有选中的部分,就复制光标所在的行,并在此行的下面粘贴出来。02、Ctrl+N:快速查找类名、文件03、Ctrl+Q:把光标移至方法处,按此组合键可快速查看方法的说明文档。04、Ctrl+E:快速查看最近打开打开过的文件。05、s原创 2017-07-20 13:44:58 · 239 阅读 · 0 评论 -
使用adb命令拷贝data文件夹中的文件到sd卡上
在开发程序的过程中,我们一般都会使用到sqlite数据库,但是有些时候我们需要查看sqlite数据库中的数据,但是由于手持终端没有root权限,这个时候我们不能够直接通过DDMS中File Explorer取出其中的数据库文件。所以此时我们就可以通过拷贝文件的形式将其中的数据库文件取出来。具体的操作见下面的详细步骤: C:\Users\aaron.zhao>adb device原创 2015-01-27 13:38:47 · 7615 阅读 · 1 评论