自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 关于面向过程编程和面向对象编程的一点想法

面向过程编程应该是面向对象编程的基础,用面向对象编程的思想看待问题时,首先想到的应该是有没有一个对象能帮我解决这个问题,能的话需要调用它的哪些方法,而不是解决这个方法的具体步骤。这样的思想对于代码的复用是非常有意义的,因为,可能有许多相似的问题,只需要调用同一个类的不同方法就行,而不需要为每一个问题提出具体的做法。...

2021-04-13 19:32:09 79

转载 获取Android最新11.0的源码

一:准备需要安装git,repo,curl命令:git和curl的安装sudo apt-get install +对应的工具名repo工具的安装和配置mkdir ~/binPATH=~/bin:$PATHcurl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/’ > ~/bin/repo 这里需要换成清华的镜像chmod a+x ~/bin/repo二:使用repo工具下载git库export REPO_URL=‘htt

2021-03-09 16:06:58 430

原创 Android:热修复

一:什么是热修复在应用上线后出现bug时,不需要新的安装包,只需发布补丁包即可在客户无感知的情况下修复bug。二:怎么进行热修复服务端:补丁包管理用户端:执行热修复开发端:生成补丁包三:热修复需要解决的问题开发端:补丁包是什么如何生成补丁包开启混淆后对补丁包有影响吗怎么自动生成补丁包用户端:什么时候执行热修复怎么执行热修复Android版本的兼容问题四:常见的热修复解决方案腾讯Tinker,阿里AndFix,美团Robust,Qzone的超级补丁五:热修复使用到的技术类

2021-03-01 20:00:47 83

原创 Android:Service服务

一:两个方法1. startService() 直接启动调用该方法后,服务即处于启动状态停止方法:自身调用stopSelf(),其他组件调用stopService()其他组件启动服务之后无法与服务通信即使启动服务的组件被销毁,服务也不会受影响直到停止2. bindService() 绑定调用该方法后,服务即处于启动状态停止方法:与Service绑定的组件销毁或者他们调用unbindService()其他组件可以通过ServiceConnection与服务进行通信,组件可以发送请求,获

2021-02-04 15:15:20 69

原创 Android:接口回调

一:个人理解什么是接口回调,首先需要一个接口,接口中定义一个用于回调的方法,接着类A实现接口并实现自己的方法,然后在类B中引用A,在自己的方法中调用接口中的方法,即可实现接口回调。...

2021-02-02 17:06:20 58

转载 设计模式:概述

一:概念软件设计模式(Sofrware Design Pattern),又称设计模式,是一套被反复使用,经过分类编目的,代码设计经验的总结。其目的是为了提高代码的可重用性、代码的可读性和代码的可靠性。二:意义设计模式的本质是面向对象设计原则的实际运用,是对类的封装性、继承性和多态性以及类的关联关系和组合关系的充分理解。正确使用设计模式具有以下优点:可以提高程序员的思维能力、编程能力和设计能力。使程序设计更加标准化、代码编制更加工程化,使软件开发效率大大提高,从而缩短软件的开发周期。使设计的代

2021-02-02 16:55:38 62

原创 Android:事件及事件的处理机制

未完结一:事件分类安卓中事件分为:按键事件(KeyEvent)触摸事件(TouchEvent)点击事件(clickEvent)二:处理机制分类基于监听接口的事件处理基于回调的事件处理Handler消息传递机制三:事件传递与处理遵循的规则1、如果界面控件设置了事件监听器,则事件将先传递给事件监听器2、如果界面控件没有设置事件监听器,界面事件则会直接传递给界面控件的其他事件处理函数3、即使界面控件设置了事件监听器,界面事件也可以再次传递给其他事件处理函数是否继续传递事件给其

2021-02-02 11:47:39 350

原创 Android:记一次View获取按键事件

目的:希望view能够获取到按键事件困难:给view设置了按键监听器,但是onKey没有执行。执行的是activity的onkeyDown()方法。解决:第一次尝试思路:从网上看到说是需要给view焦点,于是我用View.SetFocusable(true)使view获得焦点,运行代码依然无效,view收不到按键事件第二次尝试思路:继续查资料,了解到Android输入事件的源头是位于/dev/input/下的设备节点,而输入事件的终点是由WMS管理的某个窗口,最终由窗口中的View处理。最初

2021-01-29 15:47:34 464

原创 Android:notification通知

前言:android为通知增加了一些特性——Channel,Channel可以帮助用户统一管理通知,开发者可以为不同类型的通知创建同一个通知Channel,所有使用同一个Channel的通知都具有相同的行为。行为包括:重要性声音闪光灯振动在锁屏上显示替换免打扰模式通知只有第一次运行时可以通过代码设置通知Channel的行为,用户之后可以通过Settings来更改通知Channel的行为,之后程序将无法通过代码来修改Channel一:简介Notification是显示在手机状态栏的通

2021-01-22 15:13:56 304

原创 Android:TextView 类组件学习

一:组件简介该类组件主要用于显示文字,其实就是一个文本编辑器子类:EditText,Button,CheckedTextView,Chronometer,TextClock二:TextView(一):重要属性id:为TextView设置一个组件id,根据id,我们可以在Java代码中通过findViewById()的方法获取到该对象,然后进行相关属性的设置,又或者使用RelativeLayout时,参考组件用的也是id!layout_width:组件的宽度,一般写:wrap_content或者

2021-01-21 16:56:33 178

原创 Android:ViewPager学习

一:概念ViewPager是视图滑动切换工具,一般是用来做APP 的引导页或者实现图片轮播二:如何使用1. Adapter与listview类似,ViewPager也需要适配器将view与viewPager绑定,并且有一个专门的ViewPagerAdapter,官方建议我们使用Fragment来填充viewpager,这样 可以更加方便的生成每个Page,以及管理每个Page的生命周期!对于Fragment,提供了两个Fragment 专用的Adapter:FragmentPageAdapter和

2021-01-20 13:32:17 186 1

原创 Android:Fragment使用注意点

一:使用静态加载时,主activiity的布局文件中标签必须要有id,否则会报错AndroidRuntime: Caused by: java.lang.IllegalArgumentException: Binary XML file line #18: Must specify unique android:id, android:tag, or have a parent with an id for com.lwl.fragmentdemo.LeftFragment二:静态加载Fragme

2021-01-19 16:54:02 141

原创 android:UI总览

前言UI就是展示给用户的界面,相当重要。关于UI要学习的主要有相关的控件,布局,控件的事件机制等官方提供了两种方式来定义用户界面:在xml布局文件中通过xml属性进行控制在Java或者kotlin程序代码中通过调用方法进行控制推荐做法,混合使用:在xml文件中定义改动不大的组件,在代码中控制变动较大的组件一:UI组件Android采用组合器的设计模式来设计View和ViewGroup1. 视图组件 View1.1 重要特性View是Android大部分UI的基类View组件代表一

2021-01-15 18:12:01 112 1

原创 安卓反编译学习笔记

文章目录前言一、所需要的工具二、使用步骤1.引入库2.读入数据总结前言本篇笔记用来记录一次反编译的过程(使用Ubuntu 20.04.1 LTS)一、所需要的工具apkTool:反编译获得资源文件dex2.jar:反编译获得apk的源程序字节码jd_gui:查看jar文件,获得对应的源代码二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport

2021-01-14 15:06:14 59

原创 Android:TabHost学习

前言TabHost是用来在一个界面显示多个标签的组件,现在已经被Fragment代替,原因是可扩展性非常差,并且需要依赖ActivityGroup。现在对它进行学习是为了学习它构建界面的特点,更好的理解Android的UI。TabHost组件在安卓4.0之后已经被废弃了,建议使用Fragment组件来代替它。由于其设计违反了Activity单一窗口原则,它可以同时加载多个Activity,然后再它们之间进行来回切换;另外有个很致命的问题就是当点击别的选项时,按下Back后退键,它会使整个应用程序都退出

2021-01-14 14:37:14 166

原创 Android:Fragment学习

一:Fragment简介Fragment最初的作用是为了适应大屏幕的平板电脑,开发者可以使用Fragment对UI组件进行分组,模块化管理,可以更方便的在运行过程中动态更新Activity的用户界面。1. Fragment的特点:必须嵌入到Activity中使用,受activity的生命周期控制Fragment可以被多个activity复用Fragment拥有自己的生命周期,可以相应自己的输入事件2. Fragment 与 Activity的交互Fragment可以调用getActivi

2021-01-13 20:25:42 136

转载 AndroidManifest.xml学习笔记

前言本文对Android中AndroidManifest.xml进行深入的学习和知识点的记录。一:概述该文件位于项目的根目录(src/main),里面配置了程序运行的组件,权限以及相关信息。AndroidManifest.xml是Android应用的入口文件,它描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。 除了能声明程序中的Activities, ContentProviders, Services, 和In

2021-01-12 17:31:42 87

原创 Java:泛型学习

一:泛型简介1 泛型简介1.1 泛型的基本概念泛型的本质就是“数据类型的参数化”----------把类型当作是参数一样传递,数据类型只能是引用类型可以把泛型理解为数据类型的占位符(类似形式参数),即告诉编译器,在调用泛型时必须传入的实际类型。这种参数类型可以用在类,接口和方法中,分别被成为泛型类,泛型接口,泛型方法1.2 泛型的好处代码可读性更好(没有泛型就得使用Object类型来实现任意参数类型,使用的时候需要进行类型转换,instanceof方法)程序更加安全(只要编译时期没有警

2021-01-12 17:30:35 86

转载 Markdown 语法学习小结

前言这篇文章记录一下markdown的语法一:标题的语法使用#加空格,几级标题就用几个# 号,最多六级这是一级标题这是二级标题这是三级标题这是四级标题这是五级标题这是六级标题二:列表的语法(一):有序列表使用数字加点加空格(英文输入法)第一第二第三(二):无序列表使用 *或者-或者+加空格第一第二第三(三):列表嵌套在原来的列表的基础上,二级列表只需要往后空四个空格即可第一123第二三:区块的语法使用 (>),区

2021-01-12 11:46:44 105

原创 Java 中的引用的学习

前言:引用是什么?和变量有区别吗?和对象有什么联系?怎么去理解引用?一:概念计算机操作的是对象的引用。对象是某个类的一个实例(instance)。通过new关键字创建对象的过程叫做实例化。创建完对象该怎么操作它们呢?就是靠的引用!几个重点:先有对象,才有引用!String a;此时a 不能被称为引用,只是变量String a;String类型的变量默认值不是nullString a = "123"解读:创建"123"的String类对象,并将其赋值给a这个变量a就是"123"的引用

2021-01-11 17:01:59 71

转载 解析xml

文章目录前言一、xml是什么?二、有哪些解析技术1.SAX解析xml2.Dom解析xml3.Pull解析xml三:pull解析xml实战1. 重要知识点2. 解析xml流程前言这篇文章用来学习一下xml的解析一、xml是什么?xml,全称可扩展标记语言。作用:用来存储数据构成:由元素构成二、有哪些解析技术1.SAX解析xml方法:对文档进行顺序扫描,扫描到文档开始,元素开始,元素结束,文档结束等地方时通知事件处理函数。优点:解析速度快,占用的内存少缺点:只对特定的一类xml有效

2021-01-06 13:26:46 49

原创 Linux 命令笔记

文章目录前言一、安装软件前言本笔记用来记录自己学到的linux命令一、安装软件安装deb软件dpkg -i file.deb(可能需要超级管理员权限)

2020-12-29 10:15:54 40

原创 文件类型记录

文章目录前言一、Android 系统1. dex前言在这里记录一下,遇到的各种文件类型,以便自己更好的理解计算机世界。一、Android 系统1. dexdex的结构

2020-12-28 21:49:31 56

原创 记一次翻盖手机翻盖合盖操作带来的bug

项目场景:在合盖之后再翻盖,发现界面发生变化问题描述:自定义的softkey的显示在经过合盖再翻盖之后发生改变原因分析:经过添加log在生命周期以及相关方法中,可以发现合盖时不仅执行了onStop()方法,而且还执行了onSaveInstance()方法,因此可以得出合盖对于activity来说,并不是正常的结束生命周期,而是意外的情况,因此翻盖之后,会对activity重新进行绘制,此时应该重点关注activity启动后进行的一些view的加载方法,例如onCreateOptionsMen

2020-12-25 11:00:53 256

原创 Android: adb命令学习笔记

文章目录前言一、常用1.查看当前显示的activity前言ADB(Android Debug Bridge)本文记录常用的adb命令一、常用1.查看当前显示的activityadb shell dumpsys activity | grep -i run

2020-12-16 20:52:40 870

空空如也

空空如也

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

TA关注的人

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