240 发简信
IP属地:河南
  • 120
    kotlin let with run also apply also

    let 只有一个lambda函数块block作为参数的函数,调用T类型对象的let函数,则该对象为函, 在函数块内可以通过it指代该对象。返回值为函数块的最后一行或指定ret...

  • kotlin Lambda表达式

    本质 一段代码封装成匿名函数 特点 1.lambda 表达式必须通过 {} 来包裹2.如果 lambda 声明了参数部分的类型,且返回值支持类型推导,则 lambda 表达式...

  • kotlin 函数、匿名函数、内联函数

    「函数并不能传递,传递的是对象」和「匿名函数和 Lambda 表达式其实都是对象」 函数类型 简单的函数类型 复杂的函数类型 函数类型不只可以作为函数的参数类型,还可以作为函...

  • kotlin 协程

    什么是多任务?什么是协作式多任务?什么是抢占式多任务? 多任务就是操作系统能够同时处理多个任务,例如我可以使用笔记本电脑打开 AndroidStudio 和网易云音乐,一边撸...

  • App Crash崩溃捕获

    参考 https://github.com/android-notes/Cockroach 原理 利用Thread.setDefaultUncaughtExceptionHa...

  • TouchLog:解决事件分发机制

    目标 一个用于监听android事件分发流程的库,两行代码即可在运行时期监听事件的分发流程 在编写一些复杂的布局时,常常由于事件分发到底是哪个view处理产生困扰,做法通常需...

  • 截屏分享

    截屏分享,分为两个部分:截屏和分享,由于分享是大部分开发者都常使用的技能,所以这里不再记录 原理 Android系统并没有提供截屏通知相关的API,需要我们自己利用系统能提供...

  • Android 路由(Router)

    在Android开发中,最常见也是最常用的功能就是页面的跳转,我们经常需要面对从浏览器或者其他App跳转到自己App中页面的需求,不过就算是简简单单的页面跳转,随着时间的推移...

  • C++函数

    函数参数有默认值,调用的时候可以传值,可以不传值 可变参数,循环读取 构造函数,析构函数,拷贝构造函数 构造函数 析构函数 拷贝构造函数 浅拷贝拷贝的是指针的地址,深拷贝拷贝...

  • C,C++内存分配

    C语言内存分配: 静态内存分配,分配内存大小的是固定,问题:1.很容易超出栈内存的最大值 2.为了防止内存不够用会开辟更多的内存,容易浪费内存 动态内存分配,在程序运行过程中...

  • C++继承,多态,模版函数

    继承 代码的重用性父类构造函数先调用,子类的析构函数先调用父类和子类有重名的函数,是覆盖,并非多态 继承的访问修饰 基类中 继承方式 子类中...

  • C++异常处理

    C++ 异常处理,根据抛出的异常数据类型,进入到相应的catch块中 throw 抛出函数外 抛出异常对象 throw 声明函数会抛出的异常类型 标准异常(类似于JavaNu...

  • C++类型转换,IO流

    原因:原始类型转换,所有情况都是一种写法,可读性不高,有可能有潜在的风险static_cast 普遍情况const_cast 去常量dynamic_cast 子类类型转为父类...

  • stl,字符串(string),容器(vector)

    standard template library 标准模板库,相当于java中的util 字符串 容器

  • POSIX线程

    单线程 线程安全 生产者消费者模式 条件变量

  • C++

    C与C++的关系 1.C++可以与C代码进行混编(C++里能写C代码,C里不能写C++代码)2.C++面向对象编程语言、C面向过程的编程3.C++对C的一个增强 区别 1.C...

  • 120
    FFmpeg

    录音,录像,实质是一个压缩采集到的图像或音视频数据的过程,这个过程又称为编码。播放视频或者音频文件,实质上是一个解码压缩的过程,这个过程又称为解码。视频播放器原理 编译FFm...

  • 增量更新

    差分(服务端需要做) 旧版本apk、新版本apkBsDiff开源项目(依赖于Bzip2)1.根据下载的bsdiff4.3-win32-src代码,生成dll动态库,用于得到差...

  • JNI引用,异常处理,缓存策略

    引用类型:局部引用和全局引用作用:在JNI中告知虚拟机何时回收一个JNI变量 局部引用 局部引用,通过NewLocalRef创建局部引用对象,DeleteLocalRef手动...

  • 120
    JNI数据类型,C访问Java属性与方法访问

    每个native函数,都至少有两个参数(JNIEnv*,jclass或者jobject)1 当native方法为静态方法时:jclass 代表native方法所属类的clas...