
Android 进阶
android成长笔记
疯狂的沙粒
不积跬步无以至千里,不积小流无以成江海。
展开
-
Android 屏幕适配的最优方案(三)
前言屏幕适配的一种方法,生成多个XML文件,来实现屏幕适配的方法。提供一个工具类如下:import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.PrintWriter;public class MakeXml { private final static String rootPath = "D:\\layoutroot\\values原创 2020-12-03 22:40:34 · 229 阅读 · 0 评论 -
Android 高德地图 自定义Location小蓝点
设置自定义定位蓝点自定义Location小蓝点,自定义功能private static final int STROKE_COLOR = Color.argb(180, 3, 145, 255);private static final int FILL_COLOR = Color.argb(10, 0, 0, 180);private void setupLocationStyle(){ // 自定义系统定位蓝点 MyLocationStyle myLocationStyle =原创 2020-07-27 12:07:43 · 2435 阅读 · 0 评论 -
Android 高德地图 Polyline 实时绘制行动轨迹
前言项目需求,需要做一个绘制行动轨迹的功能,因为本身项目集成的是高德地图,所以在此处,就针对高德地图来简单说一下绘制行动轨迹的功能。使用到的功能显示地图定位轨迹实时位置信息存储说明实现上面的功能,可能遇到的问题,因为本文章记录的是轨迹相关功能,所以定位或地图显示相关的问题,就在此处不一一记录,如果遇到问题,可以查看官方相关文档,或者下载官方Demo。分析及实现过程因为要监测地图中心位置的实时变化,在项目中“禁止地图拖动”,这样可以减少冗余数据,避免因为手动拖动地图而产生的不准确经纬.原创 2020-07-12 18:13:14 · 11893 阅读 · 10 评论 -
android 百度地图marker标记
/** * 针对不同类别数据进行数据展示 * * @param mWaterStaticsJson:数据集合 * @param drawableId:图片id(R.drawable.icon_swcater_pic_4) */ private void setMarkerInfo(WaterStaticsJson mWaterStat...原创 2019-12-18 14:59:05 · 1863 阅读 · 0 评论 -
Execution failed for task app:compileDebugJavaWithJavac
日志信息* What went wrong:Execution failed for task ':app:compileDebugJavaWithJavac'.> Failed to create MD5 hash for file 'E:\android studio work space\work12\scwater\app\libs\AMap3DMap_7.1.0_AMapSe...原创 2019-12-09 16:33:07 · 11594 阅读 · 0 评论 -
android studio高德地图的基本使用
key和SHA11.在高德地图上申请key具体详情内容,请参考官方获取key的方法2.开发模式(debug)和发布模式(release)下的 SHA1 值是不同的,发布 apk时 需要根据发布apk对应的keystore重新配置Key,获取发布模式下的SHA1的方法。SHA1的获取方式依赖包和权限1.使用地图SDK之前,需要在 AndroidManifest.xml 文件中进行相关权限......原创 2019-12-09 09:34:13 · 1330 阅读 · 0 评论 -
android 定位权限权限的获取
/** * 获取定位的权限 */ private void initPermission() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { if (ContextCompat.checkSelfPermission(this, Manifest.permis...原创 2019-12-09 08:34:30 · 6555 阅读 · 1 评论 -
Execution failed for task ‘:app:processDebugResources‘. > Android resource linking failed
What went wrong:Execution failed for task ‘:app:processDebugResources’.Android resource linking failed原创 2019-12-04 16:44:08 · 1634 阅读 · 2 评论 -
Android编译出错:app:checkDebugDuplicateClasses
问题checkDebugDuplicateClassesCause 1: java.util.concurrent.ExecutionException: java.lang.RuntimeException: Duplicate class android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat found...原创 2019-11-03 16:47:41 · 28577 阅读 · 11 评论 -
登录和注册,记住密码小例子,希望可以帮助大家
1.登录 注册 记住密码等原创 2015-08-24 18:06:45 · 852 阅读 · 0 评论 -
登录和记住密码关于SharedPreferences存储密码
(1.)登录和记住密码关于SharedPreferences存储密码 主Activity发送广播。原创 2015-08-14 17:06:54 · 697 阅读 · 0 评论 -
Service的基本的用法
(1.)这边是Activity对Service操作的类 import android.os.Bundle; import android.os.IBinder; import android.app.Activity; import android.content.ComponentName; import android.content.Intent; import android.c原创 2015-08-14 16:42:18 · 460 阅读 · 0 评论 -
transformClassesWithDexForDebug android studio运行时出现的bug
android studio运行时出现的错误如下: Information:Gradle tasks [:app:assembleDebug] :app:preBuild UP-TO-DATE :app:preDebugBuild UP-TO-DATE :app:checkDebugManifest :app:preReleaseBuild UP-TO-DATE :app:prepare原创 2016-09-26 15:38:38 · 535 阅读 · 0 评论 -
正则表达式识别电话号码是否输入正确
一个简单的方法:/** * * 描述:正则表达式识别电话号码是否输入正确 * @param mobiles * @return boolean */ public boolean isMobileNo(String mobiles) { /** * 移动:134、135、136、137、138、139、15...原创 2016-10-11 10:28:31 · 2112 阅读 · 0 评论 -
android 强制关闭软键盘
public void closeKeyBoard(EditText editText) { @SuppressWarnings("static-access") InputMethodManager imm = (InputMethodManager) UiUtils.getInstance().getContext() .getSy原创 2016-10-11 10:30:39 · 2439 阅读 · 8 评论 -
android 对不同日期和时间的格式方法的封装
import android.annotation.SuppressLint;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.Locale;/** * @version 对不同日期和时间的格式方法的封装 * @类名称:DateUtil原创 2016-10-11 10:46:43 · 1278 阅读 · 0 评论 -
Android 获取IMEI码
某些时候我们要做一些限制条件,需要设备唯一的标示,IMEI码是一个不错的选择。TelephonyManager mTm = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);String imei = mTm.getDeviceId();原创 2016-09-27 11:20:41 · 1851 阅读 · 4 评论 -
android 在布局中使用自定义属性
1.在布局中使用自己的自定义属性的时候,首先要在布局中设置声明: xmlns:app=”http://schemas.android.com/apk/res-auto” 2.声明完成之后就可以直接使用自己定义的属性了。<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android原创 2016-10-13 11:16:03 · 437 阅读 · 0 评论 -
android 自定义一个View的基础实现方式
1.自定义View画一个圆形代码如下:package com.zhjy.measureview;import android.content.Context;import android.content.res.TypedArray;import android.graphics.Canvas;import android.graphics.Color;import android.gra原创 2016-10-13 11:33:43 · 243 阅读 · 0 评论 -
Cache清除缓存数据
主要功能有清除内/外缓存,清除数据库,清除sharedPreference,清除files和清除自定义目录,主要代码如下:package com.zhjy.hdcivilization.utils;import android.content.Context;import android.os.Environment;import android.text.TextUtils;import...原创 2016-11-04 10:24:54 · 7660 阅读 · 0 评论 -
android调用数字软键盘设置(EditText属性)
在某些时候我们要设置EditText调用数字键盘,省去在中文键盘下去切换成数字键盘,怎么做比较合适呢? 答案很简单:EditText设置android:numeric=”integer”这个属性,就会自动调用软键盘的数字键盘,还可以限制EditText只能输入数字,不能输入其他字符。...原创 2016-09-28 10:56:17 · 6937 阅读 · 0 评论 -
android 屏幕适配
生成这些文件夹的java代码(直接运行可是使用):package com.zhjy.recyclerviewdemo.util;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.PrintWriter;/** * @author :hu原创 2016-10-24 15:10:57 · 328 阅读 · 0 评论 -
EventBus使用详情总结
1.概述EventBus是一款针对Android优化的发布/订阅事件总线。主要功能是替代Intent,Handler,BroadCast在Fragment,Activity,Service,线程之间传递消息.优点是开销小,代码更优雅。以及将发送者和接收者解耦。2.下载EventBus的类库下载EventBus的类库源码地址请点击文字: https://github.com/greenrobot/E原创 2016-11-04 16:29:37 · 967 阅读 · 0 评论 -
zip解压缩方式
解压缩类(在导包的时候,应添加ant.jar解压缩包)直接贴代码:public class ZipUtil { private static ZipUtil instance; private ZipUtil() { } public static ZipUtil getInstance() { if (instance == null) {原创 2016-11-04 10:33:01 · 1050 阅读 · 0 评论 -
多层Fragment与ViewPager结合使用
效果图如下: 如上图蔬菜和水果按钮分别控制两个Fragment,这里要限制ViewPager不可以左右滑动,只能通过按钮实现滑动切换,然后子Fragment中又分别有三个Fragment与一个ViewPager的使用。 在这边直接贴上代码,MainActivity的代码:package com.zhjy.fragmentdemo.activity;import android.os.Bund原创 2016-11-02 17:44:05 · 667 阅读 · 0 评论 -
百度云推送项目实战
Demo在官网上有,我这边就不写配置什么信息了,只要是按照那边的走就不会有问题,我这边主要是跟大家说一下在集成的时候需要注意的东西,主要看那些方面可以影响到,集成是否成功,也许不全面,大觉可以互相交流。APP百度绑定成功时: onBind errorCode=0(成功码) appid=8543666(appid后台生成) userId=1107752540659249906(用户Id) chann原创 2016-10-12 10:42:31 · 1261 阅读 · 0 评论 -
android 继承ViewGroup实现自定义布局
直接上示例代码:import android.content.Context;import android.util.AttributeSet;import android.util.Log;import android.view.MotionEvent;import android.view.VelocityTracker;import android.view.View;import原创 2016-10-14 14:34:15 · 390 阅读 · 0 评论 -
ThreadPoolExecutor使用介绍
android中线程池的使用一般有三个好处: (1).线程池中的线程重复使用,可以避免因为线程的创建和销毁所带来的性能开销问题。 (2).能有效的控制线程的最大并发数,避免大量的线程为了抢占系统资源而导致的阻塞问题。 (3).能对线程简单的管理,并提供定时和指定时间间隔循环执行等功能。原创 2016-10-08 11:37:25 · 349 阅读 · 0 评论 -
Android中的EditText默认时不弹出软键盘的方法
有三种方法可以设置: (1)第一种方法是在EditText所在的Activity的清单文件中设置: android:windowSoftInputMode=”adjustUnspecified|stateHidden” <activity android:name=".Main" android:label="@string/app_name" **android:win原创 2016-10-25 17:32:24 · 452 阅读 · 0 评论 -
Github 的搭建和配置github中的SSH key值
首先你要去官网下载对应 Github bash并安装,可以查百度,有很多下载链接和安装的过程。在 github 上添加 SSH key 的步骤: 1、运行 git Bash 客户端,输入如下代码:$ cd ~/.ssh$ ls这两个命令就是检查是否已经存在 id_rsa.pub 或 id_dsa.pub 文件,如果文件已经存在,那么你可以跳过步骤2,直接进入步骤3。2、创建一个 SSH key...原创 2016-10-17 11:06:47 · 21585 阅读 · 0 评论 -
android AsyncTask 模拟异步任务 下载方法过程解析
代码解析注释如下:package com.zhjy.downloadfilestask;import android.os.AsyncTask;import java.net.URL;/** * @author :huangxianfeng on 2016/10/8. * 模拟下载文件的过程异步任务 */public class DownLoadFilesTask extends Async原创 2016-10-08 09:36:08 · 443 阅读 · 0 评论 -
android SharedPreferences 手机保存数据的简单方法
以下是直接可以使用的所有代码:import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;import java.util.Map;import android.content.Context;import android.content.SharedPreferences;public原创 2016-10-08 09:56:29 · 552 阅读 · 0 评论 -
ListView批量删除Item条目
以下是效果图: 直接贴出Activity的代码:package com.zhjy.listviewitemremove;import android.content.Context;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.LayoutInfl原创 2016-11-01 11:19:41 · 1706 阅读 · 0 评论 -
ViewPager限制左右滑动
这里采用的是自定义ViewPager来实现的直接贴代码了:package com.zhjy.fragmentdemo.view;import android.content.Context;import android.support.v4.view.ViewPager;import android.util.AttributeSet;import android.view.MotionEve原创 2016-11-02 17:47:25 · 585 阅读 · 0 评论 -
android 多进程
1.开起多进程的方法(1)android对进程是指在一个应用里面出现的多个进程,两个应用之间的通讯先不做讨论,android中使用多进程的方式只有一种,那就是在android四大组件(Activity、Service、ContentProvider、Receiver)中在AndroidMenifest中指定android:process属性即可,除此之外没有其他的方法。(2)示例代码如下<?xml原创 2016-11-21 10:34:11 · 269 阅读 · 0 评论 -
android IPC、Serializable、Parcelable基础知识
概念:IPC(跨进程间通讯)主要从三个方面进行讲解:Serializable接口、Parcelable接口以及Binder三个方面进行将讲解。1.Serializable接口Serializable可以实现序列化和反序列化操作(不做详细介绍,可查相关资料),他是一个空接口,实现起来很简单。 如下代码:/** * @author :huangxianfeng on 2016/11/21. * 实原创 2016-11-21 11:37:10 · 431 阅读 · 0 评论 -
android 五大应用开发框架
注解: android应用开发框架是 Application Framework. 其系统架构由5部分组成,分别是:Linux Kernel、Android Runtime、Libraries、Application Framework、Applications。第二部分将详细介绍这5个部分。下面自底向上分析各层。Android架构:1、Linux Kernel Android基于Linux 2.原创 2016-12-08 09:38:40 · 276 阅读 · 0 评论 -
Android高效加载大图、多图解决方案,有效避免程序OOM(1)
前言我们在编写Android程序的时候经常要用到许多图片,不同图片总是会有不同的形状、不同的大小,但在大多数情况下,这些图片都会大于我们程序所需要的大小。比如说系统图片库里展示的图片大都是用手机摄像头拍出来的,这些图片的分辨率会比我们手机屏幕的分辨率高得多。大家应该知道,我们编写的应用程序都是有一定内存限制的,程序占用了过高的内存就容易出现OOM(OutOfMemory)异常。我们可以通过下面的代码转载 2017-01-09 15:56:02 · 300 阅读 · 0 评论 -
自定义视频播放器
前言这段时间公司要做视频播放的项目,之前没有任何这方面的相关经验,经过多方查阅写出来一个demo,相对而言还是比较完整的,在这边记录一下,顺便能够帮助更多的人来学习视频的播放,也顺便作为自己的一个笔记。首先看一下效果图: 1.首先要在SDCard中放置一个视频文件(咱们示例本地的视频播放)String path = Environment.getExternalStorageDirectory()原创 2017-03-10 15:31:15 · 825 阅读 · 1 评论 -
CoordinatorTabLayout - TabLayout 和 CoordinatorLayout 相结合的折叠控件
CoordinatorTabLayoutCoordinatorTabLayout是一个自定义组合控件,可快速实现TabLayout与CoordinatorLayout相结合的样式 继承至CoordinatorLayout, 在该组件下面使用了CollapsingToolbarLayout包含TabLayout。用法Step 1 在gradle文件中加入下面的依赖:dependencies {转载 2017-03-13 16:54:21 · 649 阅读 · 1 评论