- 博客(73)
- 资源 (1)
- 收藏
- 关注
原创 Battery-Historian工具使用
电脑断开手机,持续使用要测试的apk,测试完以后,导出数据,文件在/用户/lishuang/目录下。(使用命令安装,直接去官网下载提示我电脑版本过低)7、上传到浏览器,点submit。1、安装dockker。6、获取手机耗电数据。
2024-03-18 17:36:48
742
原创 HarmonyOS
关键字说明举例struct声明组件名struct ToDolist 代办组件装饰器,构成自定义组件@Entry和@Component结合使用,构成自定义组件的入口,会在页面加载时首先进行渲染build进行UI描述build(){}Column内置组件Text内置组件fontSize字体大小Text(‘您好’).fontSize(50)Row内置组件@State声明成@State后,就建立了数据和视图之间的绑定关系@Builder。
2023-12-01 15:08:31
773
原创 Android图片不规则裁剪
demo链接:Android自定义不规则裁剪扩展链接:Android:谈谈最被误读的属性adjustViewBounds定义:1.adjustViewBounds影响的是ImageView的比例(不是图片的比例)2.调整ImageView的边界,使得ImageView和图片有一样的长宽比例。1.当ImageView的宽高固定(1000px),图片的尺寸为300*400px(宽*高),这时adjustViewBounds不论设置为true或false,不会改变ImageView的比例2.Ima
2022-03-06 15:30:30
3244
原创 PL/SQL
网址:https://www.imooc.com/video/6980结构和组成1.图形化工具: Oracle Sql Developer它用来编写PL/SQL程序它是使用java程序编写的它基于java的JDBC来连接数据库,所以只要有数据库的驱动,就可以连接任意数据库自带Oracle和Access驱动,若想连接MySql需要下载MySql驱动window使用.exeLinux使用.sh2. 如何连接Oracle数据库连接名: 随意起用户名,口令: 装好Oracle数据库以后,会自
2022-02-09 17:53:12
869
原创 Android系统架构
应用层内置应用程序及非系统级的应用程序应用程序框架层 - 为开发人员提供可开发 APP的API,因使用java开发,可称为Java FrameWork - 提供的主要组件活动管理器Activity Manager位置管理器Location Manager包管理器Package Manager通知管理器Notification Manager资源管理器Resource Manager电话管理器Telephone Manager窗口管理器
2022-01-05 15:06:47
2148
原创 Gradle构建工具
定义Gradle是基于JVM的新一代 构建工具使用场景开发软件时,用IDE去进行编码,当编码完成后,必须要进行编译,单元测试,打包等。这些需要开发人员手动实现。当版本迭代时,十分耗时且易出问题。这是项目自动化就出现了。优势1.节省时间及手动出现的错误2.可编译,测试,打包等有序工作3.与IDE和操作系统没有直接关系,具有平台无关性ADT,ANT,GradleADT : android 开发工具包,集成在eclipse中后,可以为Android提供开发环境,在Eclipse和SDK中起
2021-12-30 16:32:55
302
原创 Android仓库
创建项目默认引入google()和jcenter()google()依赖google公司自己的依赖jcenter()由JFrog公司提供的Bintrary中的Java仓库它是世界上最大的java和Android开源软件仓库maven{}由sun公司提供的服务它是Apache Maven 、 SBF和其他构建系统的默认仓库 我们项目中的一些控件必须要翻墙才能用。 “com.google.gson.2.8.5”,这时通过maven就可以访问国内镜像 “http://maven.al
2021-12-29 16:44:21
1595
原创 android适配(4.4-10.0)
Android 4.4 (API 19)沉浸式状态栏WebView增加调试WebView需验证Https证书(针对HTTPS请求)Android 5.0 (API 21)沉浸式状态栏WebView中Http和Https混合问题WebView cookie存储问题新增酷炫的转场动画Android 6.0 (API 23)运行时权限(正常权限和危险权限)指纹识别支持StatusBar模式修改light和和非lightAndroid 7.0 (API 24)适配了全面屏应用间
2021-12-29 16:25:43
1270
原创 我们为什么上瘾
上瘾是把过去遗留的问题暴露出来,真正伤害人的是,是那些用瘾来逃避的问题上瘾是青春期的发育障碍和学习障碍避免上瘾的方法:一: 找人倾诉二:想上瘾的时候,提醒自己三:树立积极的人生观...
2021-12-16 14:04:35
165
原创 Binder
Linux相关知识点进程隔离: 保证进程间互不干扰,通过虚拟地址空间实现隔离用户空间内核 空间用户空间访问内核 空间的唯一方式:系统调用
2021-12-14 15:44:37
435
原创 Android签名方式
1.V1签名:android7.0之前的签名方式使用jar Signature方式来对APK进行签名jar Signature来自于jdkAPK签名时会生成一个META-INF文件夹(用于记录签名信息):Manifest.MF,cert.rsa,cert.sf2. V2签名:Android7.0推出的使用fullAPK Signature方式对APK进行签名2.V1和V2对比:更快的安装时间,更安全。...
2021-12-14 14:20:17
1745
1
原创 Android 混淆
参考网址:Android混淆心得Android多模块混淆、多module混淆、多library混淆的正确姿势Android多模块混淆、多module混淆、多library混淆的正确姿势
2021-11-29 14:02:18
1708
原创 装饰者模式
// //刚开始微信和支付宝都有支付和查询功能// PaymentInterface wechatPay = new WechatPay();// wechatPay.pay();// wechatPay.query();// PaymentInterface aliayPay = new AliayPay();// aliayPay.pay();// aliayPay.query();//
2021-10-22 16:08:27
160
原创 Oracle学习
一、oracle图形化工具:plsql1.navicate 连接 mysql可以新建数据库 navicate 连接oracle不可以新建数据库 其实navicate能不能新建数据库取决于数据库本身。是mysql还是oracle navicate只是连接工具。2.oracle没有新建数据库的概念,默认是一个数据库实例。在实例基础上新建用户、新建表。3.Oracle Intant Client Client是 navicate想要连接oracle需要的插件,没有啥太大作用。二、oracle
2021-10-11 15:20:24
850
原创 Android Studio git更换url路径
起因因为我检出项目使用的是内网地址,每次更新/提交代码都需要插网线,偶尔知道公司是有公网git地址,所以想修改git url路径解决方法
2021-08-19 10:27:15
1191
原创 MAC版本 navicat premium配置
参考网址macox下使用Navicat Premium连接远程oracle数据库,不能用你打我!需要下载的工具navicat premium(连接oracle,UI工具)Instant Client for macOS(工具命令集合)下载地址1.navicat premium我是从淘宝买的破译版—20块钱。版本号如下:2. Instant Client for macOS下载网址:Instant Client for macOS 备注: 我下载的都是压缩包,刚开始下载的dmg,结果不
2021-08-13 17:35:44
2068
原创 Android广播
参考网址Android Broadcast 和 BroadcastReceiver的自定义权限使用android 中使用自定义权限在广播中的利用总结注册广播接收器有2种方式,一种在manifest中注册,在intent-filter中声明action,一种是使用代码注册,registerReceiver(接收器,action)发送广播,设置action,使用sendBroadcast发送当我们发送私密广播,不想让第三方知道,或者不想让接受者接收相同action的恶意广播发送者
2021-08-11 11:20:17
208
原创 HTTPS理解
参考网址:面试官接着问你HTTPS的知识点,看这里,不要退缩!Android Https相关完全解析 当OkHttp遇到HttpsAndroid OkHttp中Https的处理一、基础知识1、 HTTP是一个无状态的(没办法存储通信状态,eg:登录状态)、 透明的网络协议2、HTTP的缺点HTTP是明文通信,没有加密,信息容易被窃听HTTP没有验证双方身份,会遭遇身份伪装HTTP无法证明报文的完整性,报文可能被篡改二、HTTPS介绍概念:HTTP通讯加密,验证
2021-08-10 14:33:04
560
原创 Android APK编译打包过程
参考网址: 浅谈Android编译打包流程一、基本概念1、apk本质是一个压缩包,把后缀名改成zip,就可以看到apk文件的所有内容。2、为什么不直接使用zip,答案:系统规定的不允许3、apk如何加载: 通过应用管理器这个程序,扫描所有的apk文件,把它们标记为可加载的程序,当安装apk时,把它进行解压处理4、apk解压后包含的文件:文件名备注lib所有的so动态链接库,不会被压缩处理assets资源文件,不会被压缩处理res资源文件,二进制的xml文件和
2021-08-09 14:32:18
529
原创 Android引入第三方依赖,编译报错,但可以运行成功
1.刚开始项目引入了第三方依赖,一直运行的好好的,忽然有一天编译一直报错,但是可以运行成功,期间各种rebuild和clean都不管用。2.最终选择File -> Invalidate Caches/Restar…,重启项目以后,项目不能运行了,报错Please configure Android SDK,3.这时只要把 File–>Close Project关掉,在主界面选择Open an existing Android Studio project即可。编译也不报错了,运行也没问题了
2021-08-06 14:54:35
664
原创 JVM/DVM/ADT理解
JVM本质是一个软件,是计算机硬件的一层软件抽象JVM是把.java通过编译转换为.class字节码,最后运行在JVM上,JVM把字节码翻译成机器码C语言编译出来的汇编语言可以直接跑在机器上DVM和ART是把.java通过编译转换为.class字节码,然后把.class字节码经过一系列压缩打包成.dex文件JVM基于栈,DVM和ART基于寄存器为什么Android不选择JVM: 1⃣️.class占内存2⃣️基于栈,加载慢3⃣️文件IO操作多,类查找慢为什么A...
2021-08-03 15:18:56
225
原创 字符字节/编码解码知识点
1.字节流指的是InputStream和OutputStream2.字符流指的是InputStreamReader和OutputStreamWriter3.请求网络,输入输出均为字节流,最后把输出的字节流转换为字符流4.URLEncoder是把除ASCII以外的特殊字符进行编码,需要指定编码格式“=”编译为“%3D” try { String str = URLEncoder.encode("=我是很","GBK"); Log.e("
2021-08-03 14:59:45
265
原创 HarmonyOS
谨记录下官网内容,加深记忆官网地址:https://developer.harmonyos.com/cn/docs/documentation/doc-guides/document-outline-0000001064589184#section254451314363HarmonyOS是一款面向万物互联时代,全新分布式的操作系统HarmonyOS三大特点:1.硬件互助,资源共享 2.一次开发,多端部署 3.统一OS,弹性部署HarmonyOS支持多种开发语言API,例如:ja
2021-07-29 15:37:00
216
原创 Android系统五层架构
参考网址:https://www.jianshu.com/p/13da6c2e537f架构图个人理解:名称举例应用程序层通讯录,相册应用程序框架层 (java framework)各种manager,activityManager ,packageManager,contentProvider系统运行库层c++写的sqlite,还有Android虚拟机ADT硬件抽象层摄像头,将控制硬件的动作放在硬件抽象层中Linux内核层各种驱动,内存管理,进
2021-07-29 15:18:50
179
原创 Handler/Looper/Message关系
Handle:封装了消息的发送,也负责接收消息。内部与Looper相关联Looper:封装消息的载体,内部包含了MessgerQueue,负责从MessageQueue中获取消息,把消息传递给Handler处理MessageQueue:消息队列,负责存储消息,有消息过来就存储起来,Looper会循环的从MessageQueue中读取消息...
2021-07-28 17:31:13
238
原创 FrameWork源码下载
基础知识Android有两种类型的API不能在SDK中访问1.内部APi:在com.android.internal包中的api2. 隐藏API:带有@hide的类和方法当使用Android SDK开发时,系统默认引用了sdk目录下的android.jar,它里面没有内部api和隐藏api。当应用在手机设备上运行时,会调用sysytem目录下的framework.jar,它里面包含内部api和隐藏apiframework可以通过adb pull /system/framework /U
2021-07-28 11:22:56
636
原创 flutter项目运行到IOS手机
1.通过Android studio可以看到创建ios模拟器的选项,但是点击创建会报错,原因是因为我没按照xcode2.安装xcode,因为我mac版本是10.14,所以安装了xcode10.1,然后我flutter版本比较新,他最低支持的xcode版本是11,所以我又把flutter sdk插件降低了版本号。3.flutte版本降低后,运行flutter doctor,报错cocoapods没安装直接照着提示运行了sudo gem install cocoapods / pod setup
2021-07-22 11:13:15
3826
1
原创 flutter初使用
import 'package:flutter/material.dart';//english_words: 包含数千个最常用的英文单词以及一些实用功能.//先在pubspec中配置版本,然后在此处引用import 'package:english_words/english_words.dart';//本示例创建一个Material APP// => 单行函数的写法void main() => runApp(new MyApp());//statelessWidget,使应用本
2021-07-15 17:30:07
227
原创 Flutter一直卡在-Running Gradle task ‘assembleDebug‘
解决方法:(因为我AS版本是3.6.3,这里使用的android gradle插件版本是4.1.0,所以我改成了3.6.3,同时改了gradle版本为:gradle-5.6.4-all.zip,之前是gradle-6.7-all.zip,不知道跟这个有关系没)如图具体代码如下// google()// mavenCentral() maven { url 'http://maven.aliyun.com/nexus/content/groups/pub
2021-07-15 11:26:56
548
原创 Flutter路线学习
https://www.jianshu.com/p/6b944e949419https://flutterchina.club/get-started/test-drive/
2021-07-15 11:01:16
193
原创 Mac+Android Studio+Flutter配置
打开终端,下载flutter sdk//定位到你想存放sdk的位置cd /Users/lishuang/flutter //下载sdkgit clone -b beta https://github.com/flutter/flutter.git下载完成后,开始配置 //在终端进入用户目录 cd ~ //打开环境变量 open .bash_profile //输入如下,替换成自己路径export PATH=/Users/lishuang/flutter/flutter/.
2021-07-15 10:21:51
875
原创 kotlin学习二(今日头条)
1. 主类package com.example.todayheadline.guolinimport android.content.Contextimport android.content.Intentimport android.widget.Toastimport com.example.todayheadline.base.BaseAppimport kotlin.concurrent.threadimport kotlin.math.lnimport kotlin.math.
2021-07-09 09:31:43
302
原创 Kotlin学习(菜鸟教程)
//val从不修改的变量 var 可修改的变量 val age = 18 var num :Int = 18 //变量默认不能为null,可以添加?定义list var name: MutableList<Person>? = ArrayList<Person>()
2021-06-22 16:45:26
1208
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人