- 博客(54)
- 资源 (23)
- 收藏
- 关注
原创 加载外置apk里面的图片
步骤1:新建项目,drawable添加图片,删除无用数据、配置等build-->Build Apks,在build文件夹下面生成apk文件,copy备用保留数据:res下面的drawable文件夹,及下级的图片(需要的图片),清单文件(仅包名即可),配置文件(版本、包名)步骤2:把apk文件复制到设备上demo里面是走assets,通过代码复制到设备的,实际应用的时候,应该是走服务器下发,不管怎么走,最终都会拿到apk的存放路径步骤3:加载apk(Resource、pa
2021-09-30 17:26:29
389
原创 简单集成美团热更新RoBust
地址: https://gitee.com/mirrors/Robusthttps://github.com/Meituan-Dianping/Robust当前版本:0.4.99(目前不支持AGP4.1.0:https://github.com/Meituan-Dianping/Robust/issues/434,可以用0.4.100试试)项目的build.gradledependencies {classpath 'com.meituan.robust:gradle-plu..
2021-06-07 16:56:34
776
3
原创 自定义view实现时钟
这里时间是根据本地时间来的,如果需要精确,可以与百度时间对比,获取偏移量并计算package com.packg.demo;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Matrix;import...
2020-03-26 23:39:43
408
原创 自定义旋转太极图
package com.packg.demo;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Matrix;import android.graphics.Paint;import android.g...
2020-03-26 23:27:52
434
原创 自定义某多多跑马灯广告圈2
效果代码:public class MddPmdView2 extends View { Paint mPaint; private int mW; private int mH; private int mStockWidth = 10; private int mRadius = 50; private float mTrans = ...
2019-12-21 16:48:04
169
原创 自定义某多多跑马灯广告圈
不多废话,先行上图代码:public class MddPmdView extends View { private Paint mPaint = null; private int mW = 0; private int mH = 0; /** * 背景圆角半径 */ private float mRadiu = 0...
2019-12-21 15:07:13
179
原创 贝塞尔曲线
不懂数学公式、不懂数学公式、不懂数学公式,具体绘制全是靠自己悟出来的逻辑,1.根据本次绘制总时长与当前时长,获取占比2.根据所给出的坐标点,递归计算得出当前的点坐标,并累计添加到一个集合中,同时根据顺序绘制曲线代码:package com.project.git.com.gitproject.bezier;import android.content.Context...
2019-12-06 18:43:28
141
翻译 流海屏、异形屏判断(适配)
public static boolean hasNotch(Activity act) { return hasNotchAtHuawei(act) || hasNotchAtXiaoMi(act) || hasNotchAtOPPO(act) || hasNotchAtVivo(act) || hasNotchP(act);}/** * 华为是否有流...
2019-08-09 17:53:09
2136
原创 CyclicBarrier
import android.util.Log;import java.util.concurrent.CyclicBarrier;/** * created by wangyu on 2019-05-20 * description : 线程栏 */public class CyclicBarrierUtil { public void doOnOneThread()...
2019-05-20 16:06:15
157
原创 Android 水波纹效果
有两种实现方式,原文出处:https://blog.csdn.net/tx467220125/article/details/79853303#comments,他的文章是达到一定条件添加一个新的波纹,我修改之后,触发条件为点击手动触发添加。1.自定义View通过paint + canvas绘制public class WaveView extends View { p...
2019-03-01 18:02:30
557
1
原创 popupwindow基本使用
1.popupWindowpublic class DemoPopupWindow extends PopupWindow { protected Context mContext; public DemoPopupWindow(Context context) { super(context); mContext = context;...
2018-12-16 18:09:12
171
原创 设置activity方向
/** * 设置当前页面方向 * @param act * @param orientation */public static void setOrientation(Activity act, int orientation) { if (act == null){ return; } act.setRequestedOrientation(...
2018-12-16 17:45:12
330
原创 隐藏虚拟导航栏
/** * 显示或者隐藏导航栏 * * @param act * @param show */public static void hideShowNavigationBar(Activity act, boolean show) { if (act == null || act.isFinishing()) { return; } View ...
2018-12-16 17:38:42
246
原创 透明、渐变状态栏
1.一个渐变的drawable:<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <gradient and
2018-12-16 17:35:00
186
原创 Android部分流海屏判断方法
/** * 判断当前设备是否为流海屏 * * @return */public static boolean hasNotch(Activity act) { //满足一个条件即视为流海屏 安卓P和O不能分开 return hasNotchAtHuawei(act) || hasNotchAtXiaoMi(act) || hasNotchA...
2018-12-16 17:05:05
768
转载 关于悬浮窗Settings.canDrawOverlays获取权限是否开通出错
申请权限:private static final int PermissionRequestCode = 10;Intent intent = new Intent();intent.setAction(Settings.ACTION_MANAGE_OVERLAY_PERMISSION);intent.setData(Uri.parse("package:" + getPacka...
2018-11-16 15:01:42
14467
3
转载 关于手机打开USB,AS找不到设备的情况
具体表现:真机显示USB已连接,AS运行项目时,找不到设备。此时打开设备管理器-其他设备中,ADB interface上有个黄色叹号。解决办法:双击ADB interface, 更新驱动程序, 浏览计算机以查找..., 从计算机设备...(下面的选项), ...
2018-10-06 16:29:13
3159
原创 关于recyclerview局部刷新,造成自动滚动一截的问题
昨天遇到一个问题,卡了半天,就是recyclerview在刷新某个item中的某个view的时候,造成了其本身自动滚动。具体表现就是,将recyclerview拉到最下面,刷新的时候,它向上滚了一点,这样给用户的体验就很不好了。百度到处找找看看的,都说是什么焦点问题,setfocuse...,实际操作起来,并没有什么用。最后。。。不知道在哪里看到的文章,将布局文件中,recyclerv...
2018-09-03 09:43:32
4522
3
原创 关于eclipse或者Android studio直接运行项目到蓝叠模拟器
一般情况下,我们打开蓝叠模拟器和开发工具,想要运行项目到蓝叠模拟器,是找不到目标的这时候,我们需要先使用adb连接,连接好之后,就可以直接运行了,如下图: 看到连接成功之后,就可以直接运行了:...
2018-07-27 14:30:16
1509
原创 pdfview加载(使用第三方)
首先,添加依赖compile 'com.joanzapata.pdfview:android-pdfview:1.0.4@aar'implementation 'com.squareup.okhttp3:okhttp:3.4.2'是OKHTTP和PDF的依赖,通过先下载到本地的方式,加载本地文件需要注意申请读写权限package com.demo.com.demoapplic...
2018-07-20 17:00:38
9811
3
原创 webview加载HTML文本,以及图片宽度适应、字体大小调整、退出清理
package com.demo.com.demoapplication;import android.net.http.SslError;import android.os.Build;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v7.app.A...
2018-07-20 16:30:29
3163
转载 关于listview的item焦点问题
今天遇到一个奇怪的问题,之前运行好好的项目,在8.0设备上,某些item不能点击了,并且item里面的图片还能点击在网上查了一下,修改方法如下:1,在能拿到焦点的view(如:button,imageview等)上,添加属性 android:focusable="false" android:focusableInTouchMode="false"2,在item的跟布局...
2018-02-09 10:54:38
428
3
原创 关于for循环的一个问题
public static void main(String[] args) { new Thread(new Runnable() { public void run() { ArrayList strings = new ArrayList(); strings.add("0");
2018-01-25 18:32:11
268
原创 Android模拟点击事件
安卓模拟点击事件,可以实现的方法,目前我知道的有两种,都有不同的限制条件1.通过设备与PC连接,并且ABD接通,PC上运行事先生成好的bat文件,达到点击或者其他目的 bat文件内容:adb shell input tap 360 1080 点击坐标360, 1080 ping -n 5 127.1>nul
2018-01-12 15:05:39
943
原创 通过Exception获取其中的信息
private static String getCrashMessage(Exception ex) { Writer writer = new StringWriter(); PrintWriter printWriter = new PrintWriter(writer); ex.printStackTrace(printWriter);
2018-01-09 21:18:33
1204
转载 二维码扫描和生成
demo下载地址:http://download.csdn.net/download/qq_24179679/10038108当做备份只是简单的生成与扫描,通过从网上找的代码,复制到项目中,然后调用,实现简单的二维码生成和扫描切实可用。
2017-10-25 09:40:43
198
原创 获取当前设备所有应用基础信息
无需权限 public void getAllApp() { PackageManager pm = getPackageManager(); infos = pm.getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES); for(PackageInfo inf
2017-10-23 14:27:29
292
原创 自制jar并二次打包,反射调用assets下面的jar
如题,首先自制jar并二次打包,被打包内容:package com.example.demo;import android.content.Context;import android.widget.Toast;public class Tools { public void Show(Context ctx, String msg){
2017-09-19 16:12:05
575
转载 关于adb推送遥控器按键键值
adb shell input keyevent 19 // 向上adb shell input keyevent 20 //向下adb shell input keyevent 21 // 向左adb shell input keyevent 22 //向右adb shell input keyevent 23 //确认1 -->
2017-09-08 11:25:28
3608
原创 进度条弹窗
import android.app.Activity;import android.app.ProgressDialog;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.widget.RelativeLayout;public cla
2017-08-28 11:51:42
751
原创 关于list排序
public class list_sort { static class item{ int id; String name; public int getId() { return id; } public void setId(int id) {
2017-08-23 16:09:56
175
原创 线程池的使用,以及控制APP并发线程数
一个应用,如果并发操作过多,就会导致卡顿,用户体验很不好。我们可以通过线程池的方式,从某种角度来控制并发数,但是这就要求我们写代码的时候严格规范,能发现的耗时操作都放到线程池。下面是我自己写的一个工具类,也可以直接将里面代码扔到application。不多哔哔,上代码:public class AppThreadPool { /** * 单例,可以将该类放
2017-08-14 17:58:50
714
原创 Android读写SD卡中的txt文件
private String readTxt(String filepath){ File file = new File(filepath); String result = ""; if (file.exists()) { try { InputStream in = new BufferedInputStream(new FileInputStream(f
2017-06-16 17:18:44
877
原创 Android抓取系统日志,并从中得到其他应用的日志信息
首选,我们得准备一台root之后的设备其次,shellutil工具类(末尾附上demo中自行解压)核心方法new Thread(new Runnable() { public void run() { System.out.println("-----getLog service start----"); try { ArrayList
2017-06-16 16:39:18
1910
转载 eclipse清理Android项目
首先,去http://download.csdn.net/detail/qq_24179679/9845893下载清理工具清理之前先备份,,,清理之前先备份,,,清理之前先备份将org.ucdetector_2.0.0.jar复制到eclipse文件夹下的dropins下面,然后重启eclipse右键项目----UCDetector---detect unnec
2017-05-18 18:31:18
570
转载 Android获取公网IP以及局域网IP
本文是从网上其余大佬那里拿过来的,自己保存备用。private String getNetIp(Context ctx){ try { NetworkInfo info = ((ConnectivityManager)ctx.getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo();
2017-04-28 10:43:54
1861
转载 AES加解密(支持中文)
引用:import java.security.Key;import java.security.NoSuchAlgorithmException;import java.security.SecureRandom;import javax.crypto.Cipher;import javax.crypto.KeyGenerator;import javax.crypt
2017-04-06 16:08:55
1074
原创 eclipse修改Android项目包名和包结构
在网上翻了一些类似的文章,但是总是感觉达不到自己想要的效果,然后就搞了个项目自己试得出的结果:1.首先选中项目,在菜单栏project-----取消Build Automatically2.修改包名(清单文件里面的package):项目右键,Androidtools--rename application packge,输入新的包名,然后执行第三步 修改包结构(src下面的结构
2017-03-28 13:35:22
696
转载 Java字符串转unicode
从别人处copy过来的,实用,备用 /** * 字符串转unicode */ public static String convert(String str) { str = (str == null ? "" : str); String tmp; StringBuffer sb = new Str
2017-03-22 11:51:24
911
webview加载html文本以及PDF加载
2018-07-20
反射调用assets下的jar
2017-09-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人