自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android 插桩入门,flutter底部弹窗

AppExtension::class.java)appExtension.registerTransform(SimpleTransform(p0))}}SimpleTransform.ktclass SimpleTransform(private val project: Project):Transform() {override fun getName(): String {return “SimpleTransform”}override fun getInputTypes()

2022-02-18 13:34:08 320

原创 Android 微信摇骰子,android百度地图定位开发

@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.btnGo:imageDice.setImageDrawable(getResources().getDrawable(R.drawable.anim_dice));new Thread(new DiceThread()).start();break;default:break;}}}public class DiceThread implemen

2022-02-18 13:32:43 3860

原创 Android~使用Service还是Thread,Android面试总结

这种情况下,一般在onCreate时创建,在onDestroy()中销毁,否则,Activity销毁后,Thread是会依然在后台运行着。这种情况下,Thread的生命周期即为整个Activity的生命周期。所以,在Activity中创建的Thread只适合完成一些依赖Activity本身有关的任务,比如定时更新一下Activity的控件状态等。核心特点:该Thread的就是为这个Activity服务的,完成这个特定的Activity交代的任务,主动通知该Activity一些消息和事件,Activity

2022-02-17 19:14:58 1200

原创 AndroidStudio 4,头条面试android

5. commit可以使用单独tab或者原来方式,图标全部显示c++终于修复了,强迫症拯救了6. 支持多设备7. 录屏功能回来了 爷青回8. IDE里面可以直接pullRequest? 目前测试只支持github9. 数据库调试 这个和4.1.x版本没区别,其他变化还没找到10. 第三方库方法调用可以查看依赖11. xml编辑器多了个 app夜间主题切换升级后坑(bug?)1. 4.0.x版本向上升级会丢失所有插件,win可能会出现插件无法使用,都需要重新安装插件macOS =.

2022-02-17 19:12:07 786

原创 Android-框架问题分析案例---谁杀了桌面-,flutter教程安装配置

Have the system immediately kill all background processes associatedwith the given package. This is the same as the kernel killing thoseprocesses to reclaim memory; the system will take care of restartingthese processes in the future as needed.@para.

2022-02-17 19:07:53 158

原创 Android-Framework学习笔记(一)Android-系统架构,jetpack库

|– bootable (启动引导相关代码)|– build (存放系统编译规则及generic等基础开发包配置)|– cts (Android兼容性测试套件标准)|– dalvik (dalvik JAVA虚拟机)|– developers (开发者目录)|– development (应用程序开发相关)|– device (设备相关配置)|– docs (参考文档目录)|– external (android使用的一些开源的模组)|– frameworks (核心框架——java及C+

2022-02-17 19:03:38 2055

原创 Android 面试:常见问题总结,android艺术开发探索

@Overrideprotected void onRestart() {super.onRestart();mEditText.setText(mString);}二、生命周期方法中系统在做什么和我们应该做什么onCreate: 在这里创建界面,做一些数据的初始化工作。onStart: 到这一步变成用户可见不可交互的。onResume: 变成和用户可交互的。(在activity 栈系统通过栈的方式管理这些个Activity的最上面,运行完弹出栈,则回到上一个Activit

2022-02-17 19:02:13 134

原创 Android原生PDF功能实现,掌握了这些Android高级工程师必备知识,

7.3、代码实现:树形控件的数据对象TreeNodeData:/**树形控件数据类(会用于页面间传输,所以需实现Serializable 或 Parcelable)作者:齐行超日期:2019.08.07*/public class TreeNodeData implements Serializable {//名称private String name;//页码private int pageNum;//是否已展开(用于控制树形节点图片显示,即箭头朝向图片)private boo

2022-02-16 14:36:09 1268

原创 Android即将被替代?,彻底帮你搞懂

说说我个人的看法吧: Android 研发趋势虽然下降明显,但是新入的 Android 研发者也减少了很多。未来 Android 的生态会越来越丰富,供需会趋近于稳定,不至于被替代,现在做 Android 的可以专心做 Android,不必因为担心而转其他端,任何一端要想没有危机都需要持续学习,Android 同样是这样。如何选择就业方向?1. 纵向扩展: Application - Application Framework - Library - Linux kernel , 最后成为一个Andr

2022-02-16 14:34:44 591

原创 Android单元测试之 Mockito,kotlin枚举注解

2.3.1 verifyverify()用于检查是否发生了某些行为。我们可以在测试方法代码的末尾使用Mockito验证方法,以确保调用了指定的方法。我们可以使用verifyNoMoreInteractions()来确保所有内容均已通过验证。如果仍然有任何方法验证,它将失败并提供正确的消息。verifyZeroInteractions()行为与verifyNoMoreInteractions()方法相同。我们可以使用inOrder()方法来验证方法调用的顺序。来看一下代码:@T

2022-02-16 14:33:19 390

原创 Android入门实战教程-巫文杰-专题视频课程,ffmpeg音视频开发实战2019

Android开发工具介绍  8:19Android开发环境搭建  3:41第一个Android程序  6:03Android项目结构分析  5:25AndroidManifest文件解析  7:58assets资源  7:42drawable资源  11:04layout资源  6:51menu资..

2022-02-16 14:29:04 179

原创 Android五大基本组件,Android性能优化之APK优化

2.Context.sendOrderBroadcast()3.Context.sendStickBroadcast()Intent一旦发出,Android都会准确找到相匹配的一个或多个Activity、Service或BroadcastReceiver作响 应。所以,不同类型的Intent消息不会出现重叠,BroadcastIntent消息只会发送给BroadcastReceiver,而绝不可能发送 给Activity或Server。有startActivity()传递的消息也只可能发送给Activi

2022-02-16 14:26:14 141

原创 Android主流三方库源码分析(一、深入理解OKHttp源码,安卓面试题最新2020

}可以看到,OkHttpClient使用了建造者模式,Builder里面的可配置参数如下:public static final class Builder {Dispatcher dispatcher;// 分发器@Nullable Proxy proxy;List protocols;List connectionSpecs;// 传输层版本和连接协议final List interceptors = new ArrayList<>();// 拦截器final List ne

2022-02-16 14:23:24 150

原创 Android 设置系统SystemUI 顶部StatusBar状态栏透明一体化

参考链接http://blog.csdn.net/misly_vinky/article/details/12161075这样修改的确能够把SystemUI StatusBar变成透明的但是有一个弊端就是会导致你的其他白色应用打开的时候,当前的StatusBar就会透明和白色混着一起导致看的很刺眼SystemBarTintManager.javaAndroid 4.4 以上版本可以设置透明if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KIT

2022-02-15 14:23:43 646

原创 Android第三方开发包值高德地图SDK使用介绍,idea搭建android开发环境

代码:allprojects {repositories {jcenter() // 或者 mavenCentral()}}(2)配置主工程文件的build.gradle文件文件位置:代码:android {defaultConfig {ndk {//设置支持的SO库架构(开发者可以根据需要,选择一个或多个平台的so)abiFilters “armeabi”, “armeabi-v7a”, “arm64-v8a”, “x86”,“x86_64”}}}dependencie

2022-02-05 12:13:11 561

原创 Android程序性能优化——ANR,设计思想与代码质量优化+程序性能优化+开发效率优化

Android系统每隔16ms发出VSYNC信号,触发对UI进行渲染,如果每次渲染都成功,就能够达到流畅的画面所需要的60fps。(为了能够实现60fps,这意味着程序的大多数操作都必须在16ms内完成) 如果你的某个操作花费时间是超过了16ms,系统在得到VSYNC信号的时候就无法进行正常渲染,这样就发生了丢帧现象。那么用户在当前帧看到的仍然是上一帧画面。卡顿检测 blockcanary=========================================================.

2022-02-05 12:11:46 2628

原创 Android程序员的自我修养-计算机网络篇(二),androidui线程执行

##HTTP和HTTPS ####描述一次完整的HTTP请求过程 一张经典的http请求过程图,虽然是从浏览器角度,但放在ios和android也是适用的 ####GET和POST的区别 GET和POST是什么?HTTP协议中的两种发送请求的方法。 直观区别: 数据传输区别: 对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据); 而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 .

2022-02-05 12:10:21 7805

原创 Android移动开发--对图形图像处理的介绍与应用,BAT这种大厂履历意味着什么

| setAlpha(int a) | 设置透明度 || setAntiAlias(boolean aa) | 指定是否使用抗锯齿功能,如果使用会使绘图速度变慢 || setDither(boolean dither) | 指定是否使用图像抖动处理,如果使用会使图像颜色更加平滑、饱满,清晰 || setShadowLayer(float radius, float dx, float dy, int color) | 设置阴影,参数radius为阴影的角度,dx和dy为阴影在x轴和y轴上的距离,col

2022-02-05 12:07:31 145

原创 Android知识图谱:我们到底需要学习哪些Android知识?,阿里中间件

1. Android基础 & 常用针对Android基础&常用知识,我认为对于初级开发者来说,按照优先级最主要的知识点主要包括:四大组件、布局使用、多线程 & 动画;具体介绍如下:2. Android进阶针对Android进阶知识,按照优先级最主要的知识点主要包括:自定义View、性能优化,具体介绍如下:3. 与时俱进、热门技术除了基础日常使用的Android知识,我们还需时刻关注行业动态,与时俱进的学习新技术,如近些年来较为热门的Android新兴技术包.

2022-02-05 12:06:06 366

原创 Android注解三大框架Dagger、Hilt和Koin有何不同?,kotlin线程安全

如你所看到该工厂类实现了 get() 并返回了一个新的 CompositeAdapter 实例。这实际上是此类实现的 Provider  接口中指定的方法。其他类可以使用 Provider 接口来获取一个类的实例。如果我们用 Hilt 代替 Dagger 呢?===================================================================================

2022-02-05 12:04:41 172

原创 Android架构组件—ViewModel原理,androidndk开发步骤

数据一直保存在内存中这个优势具体来讲是在系统配置发生变化导致Activity重建时,ViewModel还是会保持在内存中。在一些场景中可以通过这种方式避免重复加载数据。ViewModel工作原理在分析ViewModel的工作原理之前,我们最好带着问题去分析。ViewModel如何被创建的,在什么时候被销毁;ViewModel的生命周期如何与组件生命周期绑定;为什么Activity重建时ViewModel的数据没有丢失;Fragment之前如何共享ViewModel;Vi

2022-02-05 12:03:16 236

原创 Android架构组件JetPack之ViewModel(二),【面试总结】

MyViewModel model = ViewModelProviders.of(this).get(MyViewModel.class);model.getUsers().observe(this, users -> {// 更新 UI});}}如果Activity被重新创建了,它会收到被之前Activity创建的相同MyViewModel实例。当所属Activity终止后,框架调用ViewModel的onCleared()方法清除资源。因为ViewModel在指定的Activity

2022-02-05 12:01:51 349

原创 Android开发工程师:都想要进大厂,那么大公司面试的方向和面试官套路你都摸透了吗

这个可以大公司都会问一些这方面的问题。多想想为什么。数据结构,几个排序要会写。还有就是多看看常用APP他们的有些算法是怎么做的,琢磨琢磨第四:目前非常火的就是hybrid混合开发(偏前端),这个要开始写一个项目了。简单的都行。从Github上下载一个项目,自己再敲一遍。第五:很重要。就是据我所知,很多应用都准备加入小视频的功能。很多大公司的APP也是。所以,视频音频,这个必须会。GitHub上很多这方面的源码,可以下载自己看看,不说自己敲一遍,至少要知道用什么,怎么做。结尾面试,无非都是问上面

2022-02-04 12:57:10 2652

原创 Android开发6年,互联网寒冬公司倒闭后,耗时3个月北上广求职

做过哪些性能优化?是怎么评测和具体优化的?为什么WebView加载会慢呢?如何优化自定义ViewFC(Force Close)什么时候会出现?Java多线程引发的性能问题,怎么解决?二、Android Framework相关Android系统架构View的事件分发机制?滑动冲突怎么解决?View的绘制流程?跨进程通信Android系统启动流程是什么?启动一个程序,可以主界面点击图标进入,也可以从一个程序中跳转过去,二者有什么区别?..

2022-02-04 12:55:45 100

原创 Android开发 设置手机壁纸,flutter真机调试闪退

2、使用WallpaperManager的setBitmap(Bitmap bitmap)方法3、重写ContextWrapper 类中提供的setWallpaper()4.传入9张自己喜欢的图片,命名image1-image9Mainfest中加入权限:布局代码<RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android”xmlns:tools=“http://schemas.android.co

2022-02-04 12:54:20 277

原创 Android应用开发编译框架流程与IDE及Gradle概要,安卓常见面试题

3-2-8 tools:showIn该属性被设置到一给被include的布局的根节点上,预览时可用。如下:<?xml version="1.0" encoding="utf-8"?><TextView xmlns:android=“http://schemas.android.com/apk/res/android”xmlns:tools=“http://schemas.android.com/tools”android:text="@string/hello_world"an

2022-02-04 12:50:06 204

原创 Android架构组件JetPack之WorkManager完全解析(五),2021金三银四面试季

在上面的MyWorker实例中,继承了Worker 并且重写了doWork()方法,需要注意的是doWork()方法是有返回值Worker.Result的,可以在任务执行成功是返回Worker.Result.SUCCESS,在任务执行出现异常时返回Worker.Result.FAILUREdoWork()方法的返回值主要有三种1、Worker.Result.SUCCESS 表示任务执行成功2、Worker.Result.FAILURE 表示任务执行失败3、Worker.Result.RETRY 通知

2022-02-03 16:14:35 301

原创 Android架构之LiveData组件,音视频sdk

tv.setText(“小鑫啊”+integer);}});//关闭定时器findViewById(R.id.btnReset).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {//通过LiveData.setValue()/LiveData.postValue()//完成对ViewModel中数据的更新liveData.setValue(0);//关闭定时器vie

2022-02-03 16:13:10 112

原创 android撕衣服应用介绍,android插件化开发指南pdf

new_bitmap = Bitmap.createBitmap(width, height, Config.ARGB_8888);//创建一个位图 ARGB_8888 代表32位ARGB位图paint = new Paint();//实例化paint类 画笔类paint.setAntiAlias(true);//设置画笔的锯齿效果paint.setDither(true); //防抖动mCanvas = new Canvas(new_bitmap);//实例化 画布 fore_bitmap类当参数

2022-02-03 16:11:45 924

原创 Android插件化-Service篇,身为一个安卓程序员Context都没弄明白

data.token, SERVICE_DONE_EXECUTING_ANON, 0, 0);} catch (RemoteException e) {throw e.rethrowFromSystemServer();}} catch (Exception e) {if (!mInstrumentation.onException(service, e)) {throw new RuntimeException("Unable to create service " + data.info.

2022-02-03 16:10:19 7665

原创 Android自定义View,又是一年金九银十

package com.android.tutor;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.Rect;import android.graphics...

2022-02-02 14:49:32 518

原创 Android组件化之ARouter的使用,安卓学习路线图

}应用内跳转使用 ARouter 进行应用内跳转非常简单,只需要在要跳转的 Activity 上添加 @Route 注解即可,具体如下:// 配置的path至少需要两级,如/xx/xxx@Route(path = FirstActivity.PATH)public class FirstActivity extends AppCompatActivity {public static final String PATH = “/test/firstActivity”;@Overridepr

2022-02-02 14:46:42 215

原创 Android系统架构概述,Spring都没弄明白凭什么拿高薪

2、Androido常用类库Android.util:核心工具包Android.os:操作系统包,提供基本操作系统服务的访问n时间,例如消息传递、进程间通信。Android.graphic :图形API,提供了支持画布、颜色和绘画的低级图形类,让开发者可以在画布上画。Android.databaseAndroid.content:内容API,通过处理资源、内容提供器和a包的服务,来管理数据访问和发布。Android.view :核心用户界面类。所有的用户界面元素的都是使用一系

2022-02-02 14:45:17 72

原创 Android第三方库解析,GitHub标星8k

}Executor callbackExecutor = this.callbackExecutor;if (callbackExecutor == null) {callbackExecutor = platform.defaultCallbackExecutor(); //设置默认回调执行器}// Make a defensive copy of the adapters and add the default Call adapter.List<CallAdapter.Factory

2022-02-02 14:43:52 77

原创 Android笔记——ViewPager循环,android开发环境比较

}public AutoScrollViewPager(@NonNull Context context, @Nullable AttributeSet attrs, @AttrRes int defStyleAttr) {super(context, attrs, defStyleAttr);init();}/**动态添加viewpager和小圆点*/private void init() {mContext = getContext() ;setLayerType(View.LAY

2022-02-02 14:41:02 226

原创 Android移动开发—Listview列表视图的使用讲解及SimpleAdapter实例

显示垂直可滚动的视图集合,其中每个视图都位于列表中上一个视图的紧下方。列表视图是一个适配器视图,它不知道其包含的视图的详细信息,例如类型和内容。相反,列表视图根据需要从中请求视图ListAdapter,例如在用户向上或向下滚动时显示新视图。通俗理解为当需要开发在一个视图页面中展示多个结构相同的组件时,可以使用listview列表视图要解决问题。ListAdapterListAdapter可以作为AbsListView的数据源,AbsListView的子类有ListView、GridView和E.

2022-02-02 14:39:38 1448

原创 Android:主流三方库源码教你快速上手Leakcanary,android开发软件案例

public RefWatcherBuilder() {heapDumpBuilder = new HeapDump.Builder();}…}复制代码在RefWatcher的基类构造器RefWatcherBuilder的构造方法中新建了一个HeapDump的构造器对象。其中HeapDump就是一个保存heap dump信息的数据结构。接着来分析下install()方法中的链式调用的listenerServiceClass(DisplayLeakService.class)这部分逻辑。4、A

2022-01-31 14:32:49 166

原创 Android高工面试:对于Tersorflow你怎么理解的?有做过人工智能的应用吗

datagen = ImageDataGenerator(rotation_range=20,width_shift_range=0.15,height_shift_range=0.15,zoom_range=0.15,shear_range=0.2,horizontal_flip=True,fill_mode=‘nearest’)dirs = os.listdir(“picture”)print(len(dirs))for filename in dirs:img = load_im

2022-01-31 14:31:24 1755

原创 Android面试抱佛脚:进程间通讯学习,从Binder使用看起

val file = File(“aaaa”)file.createNewFile()///序列化过程ObjectOutputStream(FileOutputStream(file)).use {it.writeObject(User(“张三”))}///反序列化val user: User? =ObjectInputStream(FileInputStream(file)).use {it.readObject() as User?}println(“序列化结果”)printl

2022-01-31 14:25:44 98

原创 Android面试心得,已拿到offer,kotlin线程

等等,具体看下源码吧。二、View的绘制流程ViewRoot-> performTraversal()-> performMeasure()-> performLayout()-> perfromDraw()-> View/ViewGroup measure()-> View/ViewGroup onMeasure()-> View/ViewGroup layout()-> View/ViewGroup onLayout()-> V

2022-01-31 14:24:19 128

空空如也

空空如也

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

TA关注的人

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