自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

转载 程序员装逼指南

一、准备工作“工欲善其事必先利其器。”1.电脑不一定要配置高,但是双屏是必须的,越大越好,能一个横屏一个竖屏更好。一个用来查资料,一个用来写代码 。总之要显得信息量很大,效率很高。2.椅子不一定要舒服,但是一定要可以半躺着。3.大量的便签,各种的颜色的,用来记录每天要完成的事务,多多益善。沿着电脑屏幕的边框,尽量贴满,显出有很多事情的样子。4.工具书,orelly的,机械工业,电子工业什么的都可以,能英文就英文,不行影印版的也可以,反正越厚越好,而且千万不要放在书架上,一定要堆在桌上,半打开状。

2021-06-17 01:59:55 241

原创 NDK开发时的一些优化建议

这篇google官方的培训课程提出了在使用NDK做本地开发时的一些优化建议,如避免FindClass重复查找,内存泄露,常用的数组操作和系统版本中的一些兼容检查问题。对于使用C/C++完成安卓共享库或者ELF程序的开发者,看了这篇文章就会少踩很多坑。如果当中有翻译欠妥的地方,欢迎一起交流沟通_!JNI TipsJNI全称Java Native Interface。它为托管代码(使用Java编程语言编写)与本地代码(使用C/C++编写)提供了一种交互方式。它是与厂商无关的(vendor-neutral),

2021-06-08 07:01:52 484

原创 Android如何把签名校验做到极致

为何你的应用老是被破解,该如何有效的做签名校验?前言上一篇发了个简单的NDK实现的签名校验,众所周知,签名校验是防止二次打包最普遍的方式。下面是常见的签名校验方法:/** * 做普通的签名校验 */private boolean doNormalSignCheck() { String trueSignMD5 = "d0add9987c7c84aeb7198c3ff26ca152"; String nowSignMD5 = ""; try { // 得到签

2021-04-19 16:20:49 5193 8

原创 android通过ndk加解密和防apk反编译

android通过ndk加解密和防apk反编译作为开发者的我们除了为软件各种功能的实现而发愁,在发布以后也会为软件的安全发愁,这里分享一个用JNI实现的签名校验。下面是效果图1.获取签名信息 jclass context_class = env->GetObjectClass(context_object); //context.getPackageManager() jmethodID methodId = env->GetMethod

2021-04-19 14:01:14 989 6

原创 Android - 用AnalogClock和DigitalClock实现模拟小时钟

在Android中有一个名为AnalogClock Widget的时钟对象。此次练习准备在屏幕上方放置模拟时钟,在下方用TextView来模拟电子时钟,将AnalogClock的时间以数字钟形式显示。该练习的难点是:android.os.Handler、java.lang.Thread以及android.os.Message三对象的整合应用,通过产生Thread对象,在进程内同步调用System.currentTimeMillis()取得系统时间,并通过Message对象来通知Handler对象,Ha...

2020-11-04 00:12:40 993

原创 Android7.0适配之图片裁剪

上一篇博文真是写到手软,咳咳,跑题了,咋们步入正题:Android 7.0系统发布后,拿到能升级的nexus 6P,就开始了7.0的适配。发现Android7.0在修改头像时候进行拍照并裁剪图片时会出现photos app崩溃。仔细分析操作步骤和流程,发现照片拍照是成功的,SD卡也能保存相关的图片信息,但是在对拍照的图片进行裁剪时候出现了photos app崩溃;如下图:同时发现通过选择相册进行选中图片后才进行裁剪就没有问题。看一下代码:Intent intent = new Intent("co

2020-11-01 01:48:26 252

原创 Android:会呼吸的悬浮气泡

写在前面这个标题看起来玄乎玄乎的,其实一张图就明白了:悬浮气泡演示图最早看到这个效果是 MIUI6 系统升级界面,有很多五颜六色的气泡悬浮着,觉得很好看。可惜现在找不到动态图了。虽然 MIUI8 更新界面也有类似的气泡,不过是静态的,不咋好看。再次见到这个效果是在 Pure 天气这款软件中,可惜开发者不开源。不过万能的 Github 上有类似的实现,于是果断把自定义 View 部分抽出来学习学习。再次见到这个效果是在 Pure 天气这款软件中,可惜开发者不开源。不过万能的 Github 上有

2020-11-01 01:36:37 871 1

原创 android酷炫按钮-微调按钮

这个按钮在很地方可以看到,比如音箱音量调控、原来DVD功放上的按钮等等……因为项目需要,于是简单写了一个这样的按钮。看看效果吧!有点灯灯,看源码:import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.util.AttributeSet;import and

2020-11-01 00:57:57 230

原创 Android 总结之 WebView 与 Javascript 交互

前言最近公司的App为了加快开发效率选择了一部分功能采用H5开发,从目前市面的大部分App来讲,大致分成Native App、Web App、Hybrid App三种方式,个人觉得目前以Hybrid App居多,单纯的数据展示我们直接采用WebView来渲染就可以了,但是有时候可能会用到两者之间传递参数的情况,今天就来总结一下两者之间如何互相调用。本篇主要介绍WebView与Javascript交互数据。WebView与Javascript交互:WebView与Javascript交互是双向的数据传递

2020-11-01 00:51:17 264

原创 android截图工具类

public class ScreenShotHelper { /** * 保存View的截图到文件 * * @param bmp * @param path * eg: "/mnt/sdcard/" * @param name * eg: "abc.png" * @param quality * 质量等级 0~100 * @retur

2020-11-01 00:41:49 446

原创 android动态修改app桌面icon

实现原理:在Manifest文件中,使用标签为我们的入口Activity准备多个,拥有标签的activity是为了指向入口Activity,每个拥有标签的activity都可以单独设置一个icon,在程序中我们动态设置,然后kill掉launcher,等launcher重启后,icon就替换了注意:kill掉launcher需加权限代码:Manifest.xml:<activity android:name="com.dance.changeicondemo.MainAct

2020-11-01 00:40:11 666

原创 Android最简单方式实现DatePickerDialog只显示年、月、日

项目刚好有这个需求,上网查了下。有个例子还比较简单。自定义实现DatePickerDialog,然后通过反射机制隐藏里面的控件。不过这还不是最方便的,毕竟还要不同的控件代码,XML代码。直接拿到核心代码,简单丰富一下。直接调用就可以隐藏日,月选择了。调用代码:dateDialog = new DatePickerDialog(getActivity(), listener, year, monthOfYear, dayOfMonth) {

2020-11-01 00:37:40 853

原创 Android超简单时间轴的实现

这里先说一下,我就试了一下CSDN的富文本编辑器,结果我退出去以后保存了草稿,发到自己的博客去了,而且我没有删除选项…无视吧,唉!时间轴时间轴,顾名思义就是将发生的事件按照时间顺序罗列起来,给用户带来一种更加直观的体验。京东和淘宝的物流顺序就是一个时间轴(如图),想必大家都不陌生。上一篇博文写过,刚好最近的项目又要用到,于是想直接拿个过来用,发现都是置顶的,文本和点也没对齐。不太美观。于是又重新整了一个。实现原理都是一样的,利用ListView和Adapter来实现。我封装了Adapter模板,有兴

2020-11-01 00:33:26 1824

原创 编写自己的Adapter模板

如果你项目一直用系统给你封装的BaseAdapter的话,那么我只想说,你不累么?代码繁多还要写数据缓存,还不如自己动手写一个模板吧,这样后面项目就可以直接套用了,编写和执行效率大大提升啊。BaseAdapter.javapackage com.android.dev.base;import java.util.ArrayList;import java.util.Collection;import java.util.Collections;import java.util.Comparator

2020-11-01 00:19:50 100

原创 flutter写一个精美的登录页面

我们先看一下页面 , 首先这个页面,我们并没有用到AppBar,当然也就没有自带返回功能.然后下面有个Login的文字以及一条横线.屏幕中上方是填写帐号以及密码的2个输入框,密码输入框有隐藏和显示密码的按钮.下方是登录按钮 以及其他登录方式.效果图;看一下主体布局:return Scaffold( body: Form( key: _formKey, child: ListView( padding:

2020-11-01 00:02:00 976

原创 华为手机app闪退重启界面清空log日志问题

开发app的时候,出现问题,闪退,去控制台找错误日志,看log的输出,结果一秒闪过,什么都没有.网上搜了半天,顺便记录:进入拨号界面输入:* #* #2846579#* # *依次选择:后台设置—LOG设置—AP 日志重新启动手机虽然程序闪退之后还是会自动重启,但是日志可以看到了,如下图选中[DEAD]进程...

2020-10-31 23:50:59 1151

原创 Android更新速度越来越快吗?

我们来看看数据下图中的数据显示了Android版本的发布日期与OEM在全球范围内推出解锁手机更新的首次确认报告之间的时间。我看了一下在新Android操作系统发布之前公布的关键设备,因此我们可以全面评估升级时间。此列表包括三星Galaxy S系列,华为P系列和LG的G型号。平均而言,Nougat更新大约需要192天才能到达关键设备,而Oreo则略高于170.Android Pie更新设备的速度更快,平均只有118天从谷歌推出到大规模OEM推出。这是一项重大改进,尽管我们仍在等待LG和HTC的更新,这可

2020-10-31 23:48:29 431

原创 Android模拟点击延迟解决方法

Android模拟点击延迟解决方法Android在root环境下模拟点击是利用adb shell input tap x y,但是连续多次快速点击就太慢了,经过测试差不多300ms每次,这样的效率也太低了,网上有人说,把所有要执行的点全部放到一个文件中,然后一次性执行这个sh文件,但是这个效率表示太低了,完全不好用。还有种方法,就是不断的创建新的Process执行新的点击指令,但是这种老是提示获取root权限,非常恼火!!!有没有更好的办法呢,答案是:有!今天刚好做这个需求,顺便花了几个小时解决了这

2020-10-31 23:45:48 3155 1

原创 Android Studio3.4.1更新及槽点

做过苹果开发的攻城狮都清楚,下载一个XCODE就可以随便开发程序了,那个效率真的是一个高。反观Android从最早的eclipse到现在的android3.4.2,这么多年了国内开发还是很不人性(主要是下载库和工具超级慢),开发速度也还是相当快的。今天就来说说这些吐槽点。槽点一:Android早期采用的gradle方式居然是一个项目一个gradle目录缓存,也就是说,你创建10个项目,那么是在你当前用户.gradle目录下有10个特别长的目录名,然后下面依次有10个目录,每个目录都是各自的gradle版本

2020-10-31 23:42:58 339

原创 Android开发仪表盘控件

Android开发仪表盘控件仪表盘在工业软件中很常见,今天整一个图片式仪表盘控件(非几何图形绘制)。实现非常简单,一张背景图,一张指针。创建一个RelativeLayout布局文件,然后在里面布置好控件的位置,代码如下<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_wid

2020-10-31 23:32:45 1593 1

原创 2020年最佳Java IDE将是什么?

2020年最佳Java IDE将是什么?当我们谈论流行的编程语言时,记住Java很重要!实际上,它是当前世界上最受欢迎的编程语言,每天大约有70万名Lakh开发人员在使用它。原因之一是Java的通用性。无论是桌面应用程序,移动应用程序还是Web应用程序,您只要先命名即可,Java可以创建它们!!!由于这种流行,Java有许多可以使用的IDE。这些IDE或集成开发环境在应用程序开发过程中提供了巨大的帮助。通过使用它们,您可以节省时间和精力,并在团队或公司中创建标准的开发流程。尽管世界上最流行的Java

2020-10-31 23:27:47 6001

原创 Android简单树状实现

Android简单树状实现使用ListView+BaseAdapter+自定义数据结构完美实现,不需要第三方库。简单,方便,快捷……节点类Nodepublic class Node<T> { private int _id; //节点id private Node _parent; //父节点 private List<Node> _children = new ArrayList<>(); //所有的儿子节点 private T

2020-10-31 23:16:50 520

原创 Android屏幕共享及远程控制【免root】

Android屏幕共享及远程控制【免root】使用方式对于mac 笔记本用户:Android手机开启开发者选项用数据线连接Android手机和mac运行lib目录下的Client,用于显示和控制运行lib目录下的Install,然后点击连接按钮,若不显示请安如下方式操作对于所有用户:Android手机开启开发者选项用数据线连接Android手机和PC使用adb命令把项目根目录下的Main.dex放到手机中 adb push Main.dex /sdcard/Main.dex执行a

2020-10-31 23:10:47 3782 5

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除