- 博客(59)
- 资源 (2)
- 收藏
- 关注
原创 android 拍照,相册获取后的文件并适配10.0获取绝对地址
言简意骇使用本人封装好的工具类就可以在此我告诉大家怎么使用。 cameraUtil = CameraUtil(this)1进行初始化 cameraUtil!!.getOpenCameraFile(object : CallFile { override fun getFile(file: File) { } })2 注册接口用于返回我们拍照后的文件。 cameraUt
2021-11-24 14:59:07 1993
原创 Context,Service,Application,Activity的区别?
Activity,Service,Application 关系图。 (课外)ContextWrapper和是一种装饰模式1. ContextWrapper就是一个包装类没有具体的实现,真的是逻辑代码都在ContextImpl中,ContextImpl继承自抽象类Context,并实现了其中的抽象方法。2. Context类是最上层的抽象类,在内部定义了大量的抽象方法,其startActivity方法也定义其中。3. Activity继承自Contex...
2021-11-17 11:26:01 2037
原创 activity启动流程或工作流程
1启动activity 原理。 1.1 启动方式。 Intent intent =new Intent(this,MainActivity.class);startActivity(intent); 1.2 源码分析(注本篇幅源码和讲解较多如若不清楚还请好好品鉴) 1.3 点进startActivity 中让我们一探究竟 1.3.1 ...
2021-09-15 21:59:56 1221
原创 无代码入侵的广播监听
采用 JetPack 技术 (注 在Androidx才可使用)使用方式1 添加依赖 implementation "android.arch.lifecycle:common-java8:1.1.1"2 创建网络监听类public class NetWorkStateReceive extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) {
2021-04-07 16:57:24 282
原创 Android Camera 相机开发第一篇
相机现实知识: Camera SurfaceView (SurfaceView 也是TextureView,最常用的当然是SurfaceView 所以主讲SurfaceView) 俩者关系脑图一、SurfaceView 、Surface 、 SurfaceHolder关系图S...
2020-09-02 11:45:32 5008
原创 ConstraintLayout 动态设计View的约束
对于 ConstraintLayout 约束布局我想大家应该都接触过,约束布局可以减少布局的嵌套并且约束写的好没有适配的烦恼。如果不了解的同学点击这里了解约束布局ConstraintLayout我这边这篇博客是解决大家在项目中对于View的显示(View.VISIBLE)和 隐藏 (View.GONE)的动态烦恼。如果你当前的约束A 被隐藏那么 和A有约束的View会在布局错乱 ,所以才需要动态的添加约束,直接工具类当前和XML中的约束名字都是一致的并且上备注。public c...
2020-08-18 16:15:29 735
原创 AndroidStudio Cannot invoke method close() on null object
Cannot invoke method close() on null object 关于报错。1gradle 编译失败报的错, 将app 目录中的 build 文件删除,重新编译就好了(如果这样好了就不要再去尝试 2 的解决方式了)2 在项目的Build.gradle 中进行添加 在 buildscript 标签 下和 allprojects 标签下添加configurations.all { resolutionStrategy.cacheDy...
2020-08-18 15:50:59 2386 4
原创 Android 使用Web3j构建以太钱包
Web3j的引用直接通过咱们平时导入各个引用的方式 implementation 'org.web3j:core:3.3.1-android'这样导入还需要导入multidex 因为导入你会发现报65535所以还需要导入 implementation 'com.android.support:multidex:1.+'进下来创建以太的链接//用**代替的可以选择ETH的链...
2019-12-23 11:06:17 725
原创 自定义View从0到1 (1)
第一章 浅谈自定义View我们先带入门浅谈自定义View与了解自定义View想要学好自定义View对于View要有一个了解不可能一上来就要写一些花哨的视图。对于自定义View我们先了解Paint(画笔)打个比方我们要进行作画那么画笔Paint有了那么我们需要作画的纸Android中Canvas(画布),现在我们知道了俩个对象Paint(画笔),Canvas(画布)。接下来我们去了解Paint...
2019-11-25 09:55:02 288
原创 Android WebView 点击图片获取查看预览大图缩小
WebView 点击图片在移动端要注入JS 去搞定 但是一般这种需求也是可以教给你们丰富经验的H5前端小姐姐(小哥哥)进行搞定的那么如果前端小哥哥或者小姐姐不会怎么办那么请看下文1 添加网络权限 <uses-permission android:name="android.permission.INTERNET" /> <uses-permissio...
2019-11-15 11:53:19 901
原创 View滑动到底可以用几种方式实现呢?
在了解View滑动的书记兼我们需要知道View的坐标系,如果坐标都不知道在什么未知那么索然无味的让它动起来又有什么意义呢?如上图我们根据图片也能得到View的宽高。viewWidth= getLegt() - getRight(); View的宽viewHeight = getTop() - getBottom(); View的高1.1...
2019-09-04 10:59:21 250
原创 Android 9.0 权限申请流程图
首先说一下对于Android权限名词解释。uid 用户linux权限系统中用与区分用户身份的标识,由于Android是单一用户权限系统,也可以理解为应用ID,该ID从用户安装起就会分配,uid也会改变条件是卸载重新安装。 pid 进程ID用于远程服务交互 appid appid可以理解伟和uid一样只不过是本地服务叫法不同 callerid call...
2019-08-27 17:27:15 1490
原创 build 文件中自定义变量读取JSON等操作版本控制教学并在代码中获取当前变量
apply plugin: 'com.android.application'//1首先导入JSON 依赖import groovy.json.JsonSlurper//使用def 定义自己的函数 getAppVersionCode 获取JSON文件中当前的版本号def getAppVersionCode() { //默认版本如果没有读取到就使用默认 int vvCode...
2019-08-14 12:19:56 641
原创 关于Android适配版本Q
对于Android Q 也就是Android 10.0的到来大家做好准备了吗, 这篇博客用来给大家普及Android Q 适配知识的普及。当然本人首推的是官方Google的文档,不关官方更新到那个版本我们开发者肯定关心的是如何适配。 1 储存空间Android Q 方面还是使用...
2019-07-29 11:34:43 4568 3
原创 仿淘宝倒计时
一下是自定义视图, 下面还有布局和使用方法。@SuppressLint("HandlerLeak")public class RushBuyCountDownTimerView extends LinearLayout { // 小时,十位 private TextView tv_hour_decade; // 小时,个位 private TextView tv_hour_un...
2019-07-03 16:16:37 599
原创 读取Assets中的数据库 .db文件
示例图 现在要进行读取xcz1.db 中的 数据那么读取数据之前要知道表明字段名,如果知道直接绕过 1 看 导航2 . 1 在不知道的情况下我们可以使用工具Navicat Premium 进行查看,示例图这样我们就能看到表明和字段名等信息 那么我们知道了这些信息直接进行 将数据库复制本都 进行读取就OK ,直接上代码2 进行读写权...
2019-07-01 10:51:38 1265 3
原创 关于自定义注解
声明: 本人最近也在学习自定义注解但是看着网上的代码拿下来运行都直接报错,我在想 你们在抄别人的帖子之前要自己先运行一遍,本人这边通过学习进行纠正他们自定义注解创建对象和查找id 的错误。 在进行学习自定义注解之前首先要了解反射,因为在你注解将对象传过来的时候那么你的当前对象要进行利用反射进行查找和赋值,然后如果看不懂那就先直接看最后自定义注解的解释就会明白为什么要先看反射了...
2019-05-10 18:41:39 280
原创 一些好玩的开源库
1* TreeView implementation for android https://github.com/bmelnychuk/AndroidTreeView2* 可滑动的Fragment加不一样的Table https://github.com/gauravk95/bubble-navigation3* And...
2019-05-10 13:59:32 371
原创 Android8.0 下载APK 安装无响应
前言: 由于公司不想用 阿里的、腾讯的 热更新和热修复,所以只能自己写和后台哥们一起,想法调用底层C 进行交互下载可以完成差异下载和重新安装的需求,完成了 Android 7.0的私有文件夹 URI 的 路径判断和转换,但是测试机是android8.0的原因,在下载完成会进行一个无法拉起Intent进行安装,后期查看官方API 才发现在Android 8.0 又新加了一项权限“安装未知应用”。...
2019-04-28 17:23:04 811
原创 根据字符串等生成你的专属二维码
首先导包依赖zxing的 implementation 'com.google.zxing:core:3.2.1' implementation 'com.journeyapps:zxing-android-embedded:3.4.0@aar'直接上方法 进行调用就可以 在address 中传入要生成的文字等或者地址private Bitmap creat...
2019-04-12 18:22:20 1431
原创 Android_Dagger2 入门及依赖导入问题详解
其实现在网上已经有很多的Dagger资料但我查阅了一下我发现多好都是有点瑕疵让大家从Dagger入门到放弃再从入门到放弃,如此反复,顿时想到了圈中的很多从入门到放弃(Java从入门到放弃)等.....注:耐心观看废话一般很少不要错过细节以防出现纰漏,直接将如何上手和介绍,本篇博客针对小百快速入手Dagger2(匕首)。 1,Dagger2 的讲解 ...
2019-03-29 16:04:34 646
原创 全面屏按钮挡住页面布局进行适配
查看为适配效果我在适配之前查看这方面资料总结一下 1:在AndroidManifest.xml文件中当前启动Activtiy中加上一条属性:android:resizeableActivity = “true” 2:加上<meta-data android:name = "android.max_aspec...
2019-03-18 14:56:03 1047 2
原创 RecyclerView 设置滑动速度
1:需求、 RecyclerView 的滑动速度降低或者加大 滑动速率 直接找到官方API但是看了一圈都没有找到可以设置RecyclerView滑动速度的方法。 那就没有办法了只有从源码中进行查看。 首先RecycleView提供了俩个滑动监听的方法如下: ...
2019-03-16 13:45:54 6867
原创 Android 拍照适配到7.0,并进行动态权限授权(教学)
在Android 6.0的时候我们进行拍照 需要动态权限不然会报错, 有的也就直接崩溃,都没有错误日志,今天先说动态授权,并介入到拍照,拍照的话在7.0 的时候使用直接的包名储存会进行报错,就需要一个共享地址去储存砸门的图片,大致的问题就这些,接下来我们进行代码实现并进行讲解。 我们使用摄像头所以第一步现在我们的清单文件也就是AndroidManifest中添加<uses-p...
2019-01-18 18:25:48 1652
原创 微信登录昵称乱码+微信正式包签名测试使用Debug模式测试
1 先去解决微信昵称类似与(8E%...........)解决方式使用JAVA ----net包下的 类就完美解决 String decode = URLDecoder.decode(wx_name, "UTF-8"); 上方是URLDecoder 解码方法 将wx_name进行更改成项目中拿到的微信name就OK ...
2018-12-14 22:10:07 1132
原创 一个安卓开发中常用的字符串工具类
public class StringUtils { private StringUtils() { throw new AssertionError(); } /** * 密码 * * @param pwd * @return */ public static boolean isPwd(St...
2018-11-13 08:54:24 545
翻译 Glide加载圆形图片并且带白色边框
1、创建一个类此类是重写Glide中的样式进行更改 implementation 'com.github.bumptech.glide:glide:4.0.0-RC1'/** * 加载圆形头像带白色边框 */public class GlideCircleWithBorder extends BitmapTransformation { private Pai...
2018-11-12 09:00:08 1438 3
原创 读取assets的json工具类
public class JsonFileReader { public static String getJson(Context context, String fileName) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); try { AssetManager assetMana...
2018-11-12 08:47:41 993
原创 ScrollView或NestedScrollView嵌套ListView显示一条itme的问题
解决方法 重写ListView中的 onMeasure方法 @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { int expandSpec = MeasureSpec.makeMeasureSpec(...
2018-11-12 08:43:37 817
原创 带你初始View
什么是自定义View 那么是View , View是Adnroid中所有控件的基类,不管是简单的Button 还是TextView 都是复杂的RelativeLayout 和ListView 他们的基类无非都是View, View是一种的界面层的控件的一种抽象,他代表了一个控件。除了View还有ViewGroup,ViewGroup的内部包含了很多控件,也就是一组View。在Adnroid中Vie...
2018-09-07 07:08:43 399
原创 线程 和线程池
线程池能有效的处理多个线程的并发问题,避免大量的线程因为互相强占系统资源导致阻塞现象,能够有效的降低频繁创建和销毁线程对性能所带来的开销。真正线程池的实现是通过ThreadPoolExecutor,ThreadPoolExecutor通过配置不同的参数配置来创建线程池。 一.Java中的ThreadPoolExecutor类看到这既然用到了ThreadPoolExec...
2018-08-30 08:49:26 203
原创 140款Android开源优秀项目源码
值得收藏https://blog.csdn.net/April52522/article/details/70171623
2018-08-28 16:03:17 559
原创 WebView显示VR或者显示H5的VR链接
效果图镇楼 在学会怎么去用WebView 显示VR效果并适配个个手机都能出来的效果后加急写了这篇博客,本尝试了很多方法拿WebView去直接.loadUr 的时候发现在百分之 60 的手机能上能显示出VR效果那百分之40其实显示了我们H5提供的App下载网页,所以一看就知道那百分之40的手机不能不管只能领找方案。 所以 我简单...
2018-08-28 15:09:05 3673 5
原创 Kotlin 动态更改EditText 中password更改显示可见
inputpass,换成你的EditText //可见 inputpass.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD); //隐藏 inputpass.setInputType(InputType...
2018-08-23 17:32:48 1193
原创 Android 使用广播对电话进行监听和挂断
1.添加权限<!--拨打电话的权限--><uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" /><uses-permission android:name="android.permission.READ_PHONE_STATE" /><...
2018-08-22 01:09:18 4608 3
原创 在Recyclerview中出现RadioGroup错乱复用和LIstView中错乱复用解决方法
1首先说一Recyclerview中RadioGroup 出现点几一条直接下拉出现多个选中的情况 解决方法如下 // 在适配器中获取到你得到RadioGroup RadioGroup radioButton = helper.getView(R.id.redioFroup); //为获取到你得到RadioGroup中小...
2018-08-22 00:44:58 1619
转载 PopupWindow 中EditText不能复制粘贴的问题
https://blog.csdn.net/lmj623565791/article/details/37815413/
2018-08-20 08:36:54 1783
转载 全新的Android 的通知栏 兼容高版本
全新的Android的通知栏可自定义持续更新先给大家看一下效果图/** * 显示一个普通的通知 * * @param context 上下文 */ public static void showNotification(Context context) { Notification notification = ne...
2018-08-15 01:34:08 1360
原创 Actvity 管理Fragment 的退栈与回栈
我把代码放上来 解释我全部 都有备注, 电调用此方法可以实现回栈的功能。 //此方法 简单解释 public void changeFragment(int containerId, Class<? extends BaseFragment> fragmentclass, Bundle bundle, boolean isReplace, boolean isBook) ...
2018-08-14 16:43:10 1082
系统状态栏与底部导航栏相关工具类
2018-08-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人