![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
安卓开发
文章平均质量分 71
dawn_rainy
路漫漫其修远兮,吾将上下而求索
展开
-
Android APP内存优化之图片优化
图片优化转载 2022-07-18 18:23:59 · 847 阅读 · 0 评论 -
TimePicker 判断开始时间大于结束时间----利用反射原理
Class mTimePicker = Class.forName("android.widget.TimePicker"); Field[] fields = mTimePicker.getDeclaredFields(); for (Field field : fields){ if("TimePickerDelegate".equals(field.getType().getSimpleName())) { ..原创 2021-12-10 16:30:02 · 782 阅读 · 0 评论 -
AndroidStudio同时安装多版本
最近想学Compose来着,"开始前,请下载最新版本的Android Studio Arctic Fox " 因为这一句话,一直拖着。今天终于解决了这个问题。现记录如下。 1、官网直接下载压缩包Download Android Studio and SDK tools | Android Developers2、解压上一步下载的文件,在根目录下,找到idea.properties文件,修改如下路径。这样在运行AndroidStudio时,就会要求自己去选择配置。...原创 2021-12-02 16:54:16 · 3806 阅读 · 0 评论 -
条形码打印--安卓
最近美团出餐宝要求服务商支持在小票上显示订单一维码信息,时间很赶,抓紧行动。由于我们有多个项目与打印相关。用到的打印机有驱动打印机,网口打印机,蓝牙打印机。不用惊讶,驱动打印机是用于delphi开发的桌面项目。开发的时候,找资料花了很长时间,完全把一维码的生成规则弄明白后,才解决了驱动机打印小票的问题。用delphi的人并不多,我还是先写安卓连接网口打印机和蓝牙打印机打印二维码吧。此段代码为条形码转换方式public class OneDimensionUtil {...原创 2021-09-07 14:39:36 · 1152 阅读 · 0 评论 -
关于百度地图API OnGetGeoCoderResultListener 导致的内存泄露问题
OnGetGeoCoderResultListener 所有类似的监听器都可以如此尝试。虽然写法大差不差,但是还是要多测试。geoListener如果不销毁,就会一直持有GeoListener的 activity ,导致整个Activity不能释放。private GeoCoder geoCoder;private GeoListener geoListener;geoCoder = GeoCoder.newInstance();geoListener = new Ge...原创 2020-07-20 17:49:37 · 949 阅读 · 0 评论 -
责任链模式实际应用
职责链模式(Chain of Responsibility):使多个对象都有机会处理同一个请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。类图:应用场景: 为完成同一个请求,如果存在多个请求处理器以及未知请求处理器个数或者请求处理器可动态配置的情况下,可以考虑使用责任链模式。如OKHttp的拦截器就是使用的责任链模式。 我先描述一下我的使用场景。新接一个需求,拍照上传到服务器。我调用系统自带的拍...原创 2020-07-09 16:18:33 · 1823 阅读 · 1 评论 -
RxJava2操作符之Zip
zip一般用在某一个界面的数据通过不同的来源获取时。例如我们要展示一个页面,而这个页面的数据一部分是通过A接口获得的,另一部分是通过B接口获得的,还有一部分是本地文件读取的,那么这种场景下就可以使用zip操作符,将三方数据组合好后同时展示出来。zip 有很多重载的方法。public static <R> Observable<R> zip(Iterable<? extends Observable<?>> ws, FuncN<? extend.原创 2020-06-16 14:56:30 · 788 阅读 · 0 评论 -
安卓开发常见异常错误
问题一: in layout has no declaration in the base layout folder在Android Studio的 File 里有一个 Invalidate Caches / Restart 点击它再从弹出窗里选择 Invalidate and Restart.Android Studio重启后正常。问题解决。原创 2020-05-26 14:15:54 · 607 阅读 · 0 评论 -
组件化开发笔记
原文:https://blog.csdn.net/guiying712/article/details/55213884#1为什么要项目组件化=====================================================================以下是我方便查找做的笔记.一、Android Studio中的Module主要有两种属性,分别为:1、a...原创 2019-01-15 17:18:06 · 303 阅读 · 0 评论 -
组件化开发笔记(二)
1、从library 的activity跳回到主工程的activity Intent intent = new Intent();intent.setClassName("com.yx.wolfnestlib", "com.yx.wolfnestlib.activity.DengluActivity");startActivity(intent);setClassName(主activ...原创 2019-01-24 16:48:21 · 78 阅读 · 0 评论 -
Android Studio上传代码到码云
1、在码云新建一个仓库建好后复制一下上图地址2、在计算机任意地方新建一个文件夹,按住Shift+右键,选择在此处打开命令行窗口。输入: git clone 刚复制下来的地址下载完成,以备后用。3、在Android Studio中新建一个项目,此时可以把第二步下载下来的文件夹中的git文件夹复制到项目根目录下。会发现项目中的文件变成红色Ps:如果没有变成红色,请打开V...原创 2019-01-11 10:51:09 · 1609 阅读 · 0 评论 -
AndroidStudio中导入module
在build.gradle中dependencies{compile project(':oss-android-sdk')}这种依赖就是module。导入方法:1)在file-new -new module .选中准备好的sdk,直接按下一步就能完成2)找到如图按钮,点击3)点击OK。返回看项目。出现这样的竖状图就是添加成功了...原创 2018-07-06 17:23:58 · 576 阅读 · 0 评论 -
Error:Plugin with id 'com.jfrog.bintray' not found. 解决办法
Error:Plugin with id 'com.jfrog.bintray' not found. 出现这个错误,是在android studio的项目中导入module,编译通不过。出现以上错误 导致这个的原因是该项目的原作者会把项目发布到maven中央仓库中,所以在gradle中添加了相关的maven发布任务。 而我们是不能连到maven的仓库,解决这个问题...原创 2018-07-06 17:14:55 · 3647 阅读 · 0 评论 -
android studio使用git第一次配置并上传代码到阿里云
参考文章:https://blog.csdn.net/Android4strong/article/details/78321108 我一直想找个时间上传代码。关键是以前没有上传过。期间有上传一次,结果电脑换了好几台。今天终于把代码成功上传了。记录下来,方便记忆不佳的我。也给需要的朋友做个参考。 git服务器都一样,无论是码云还是阿里云,或者其他的。唯一的差别就是阿里云需要参照给定的文档...原创 2018-06-11 15:35:26 · 2833 阅读 · 0 评论 -
安卓中读取配置文件
1、新建一个文件db.properties原创 2014-06-29 17:38:31 · 3103 阅读 · 0 评论 -
dom4J
DOM4J(转载) 与利用DOM、SAX、JAXP机制来解析xml相比,DOM4J 表现更优秀,具有性能优异、功能强大和极端易用使用的特点,只要懂得DOM基本概念,就可以通过dom4j的api文档来解析xml。dom4j是一套开源的api。实际项目中,往往选择dom4j来作为解析xml的利器。 先来看看dom4j中对应XML的DOM树建立的继承关系转载 2014-07-04 21:48:32 · 499 阅读 · 0 评论 -
百度地图导出不显示的解决方法
安卓开发用的百度地图,在调试的时候一切正常,导出时地图不能显示,解决办法:在命令行那里,cd C:\Users\Administrator\Desktop\apk> 进入签名文件所在的根目录,输入C:\Users\Administrator\Desktop\apk>keytool -list -v -keystore ** (**为签名文件的名称)就会出现证书指纹:原创 2016-04-21 14:07:10 · 680 阅读 · 0 评论 -
android自定义控件--渐变进度条
效果图如下: 实现代码:import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.LinearGradient;import android.graphics.Paint;import and原创 2017-12-08 11:25:51 · 1474 阅读 · 1 评论 -
ExpandableListView始终展开不收缩
效果图:此界面是用expandablelistview实现的直接上代码:package com.example.administrator.expandlistviewdemo;import android.os.Bundle;import android.support.design.widget.FloatingActionButton;impo原创 2017-11-21 11:17:58 · 3406 阅读 · 0 评论 -
安卓自定义界面——textview显示带小红点
这个自定义view是从我原有的项目中提取出来的。可是因为突然有一栏要隐藏,导致我的小红点显示很难看,直接跑到字上面去了,于是我决定自定义一个view,来满足需求代码如下:textview_withpoint.xmlxml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="h原创 2017-11-22 13:57:06 · 3218 阅读 · 0 评论 -
安卓自定义控件--TypedArray 详解
我本是在阅读TvRecyclerView的源码。我没有弄明白默认的选中图标到底如何设置的。我就去看源码,看到使用了TypeArray,于是记录下来,方便以后查看。 使用流程如下: 在attrs.xml中定义一个属性变量 xml version="1.0" encoding="utf-8" ?> name="TvRecyclerView">原创 2017-12-07 14:39:49 · 524 阅读 · 0 评论 -
安卓系统源码--DeskClock源码解析(一)Direct Boot Mode
说实话,我是第一次看源码,写在博客里,权当作笔记。望有缘人看见不喜勿喷,谢谢! 为什么选择系统闹钟,我是希望这块代码对我作做APP保活有一定帮助。众所周知,只要你定义了一个确切的时间,闹钟就会按照你设定的时间准时响起。哪怕是间隔每天,它也不会偷懒。就算最终跟我的设想大相径庭,我也学到了很多编码知识 源码来自于 http://androidxref.com/8.0.0_r4/xref原创 2018-01-15 14:27:29 · 1263 阅读 · 0 评论 -
安卓系统源码--DeskClock源码解析(二)单例模式
前些日子,一直在看设计模式,惊觉自己写的单例模式一直是有问题的。 刚好奉上前段时间我看到的例子与解析: public class SingletonPattern { private static SingletonPattern singletonPattern= null; //限制住不能直接产生一个实例 private Singlet原创 2018-01-15 15:07:32 · 287 阅读 · 0 评论 -
安卓系统源码--DeskClock源码解析(三)枚举
我选取了DataModel中的部分源码,是关于枚举的。 public final class DataModel { /** Indicates the display style of clocks. */ public enum ClockStyle {ANALOG, DIGITAL} /** Indicates the preferred sort orde原创 2018-01-15 17:32:43 · 320 阅读 · 1 评论 -
安卓 socket简易聊天室
package service;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;import util.ReadThread;import util.WriteThread;public class ServerSocketDemo1 {原创 2014-06-29 12:51:24 · 701 阅读 · 0 评论