自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 flutter Running Gradle task ‘assembleDebug’… 卡住问题

一、关于镜像问题-替换为阿里国内镜像1、修改Android根目录中的build.gradle文件2、修改flutter目录的flutter.gradle文件 位置flutter sdk位置+\flutter\packages\flutter_tools\gradle\flutter.gradlerepositories { // 这里做了修改,使用国内阿里的代理 // google() // jcenter() maven { url 'https://mave

2020-07-10 11:00:32 5638

原创 FFMPEG实战——shell语法

1、shell脚本输出 echo文件头 #!/bin/bash初始化标量 ndk=10 text=shell特殊 text=“i love shell” 有空格需要用引号text1=$(who)echo $ndkecho $text命令行结束状态0 成功127 没有找到命令1 未知错误126 命令不可执行if条件语句只有if命令的退出状态码为0,才会执行then部分语...

2019-07-31 09:21:20 542

原创 FFMPEG实战——shell脚本

我们都知道要做NDK开发少不了的就是shell编程。今天就梳理一下我们平时常用的一些shell命令。1、文件操作:显示列表 ls -l所有文件 ls -la通配符查询 ls -l ja*创建文件 touch test.c创建文件夹 mkdir dir复制文件 cp src.txt dest.txtcp -i src.txt dest.txt 询问模式cp src.txt 复制到当...

2019-07-30 08:17:56 705

原创 FFMPEG实战——配置踩过的坑

最近用把ndk转到Android studio上来开发,在配置ffmpeg时着实遇到了不少坑,下面记录一下,以免以后在遇到类似问题。1、首先是ffmpeg的编译so库 a、环境:我这里用的是ffmpeg3.3.9 ,ndk(r15c) 用的版本相对低一点,这便于遇到问题在网上可以找到解决方案。 服务器:CenOs7 模拟器也可以,但...

2019-07-21 11:53:35 962

原创 JNI基础知识(四)C++构造函数及浅拷贝、深拷贝问题

C++的语法之特别,连其构造方法都有三个:构造函数、析构函数、拷贝构造函数,与Java相比确实有其独到之处。构造函数:声明的时候就会调用class Teacher{private: char *name; int age;public: //无参构造函数(写了,就会覆盖默认的无参构造函数) Teacher(){ cout << "无参构造函数" <&lt...

2019-07-11 16:28:37 378

原创 JNI基础知识(三)C++的特别之处

我们在写JNI开发时,会经常遇到C和C++混编的情况,那我们如何做好区分呢?那只能我们多注意其实现。首先来看下C++跟C有哪些不同吧:1、输出我们是到在C语言中我们输出一般都是用到printf这个函数,但在C++中则不一样,首先其输出库为“iostream”写法如下:std::cout << "this is c plus plus" << std::en...

2019-07-11 16:05:18 128

原创 JNI基础知识(二)C/C++访问Java的成员

下面介绍下C语言对Java属性以及方法的访问情况以及一些需要注意的地方。1、访问java静态方法//java方法public native static String getStaticStringFromC();//c代码//函数实现JNIEXPORT jstring JNICALL Java_com_zhufk_JniTest_getStaticStringFromC(J...

2019-07-08 15:17:26 240

原创 JNI基础知识(一)开发流程

一、JNI简介JNI(Java Native Interface),即Java本地接口,是为java编写本地方法和jvm嵌入本地应用程序的标准的应用程序接口。首要的目标是在给定的平台上采用java通过JNI调用本地方法,而本地方法是以库文件的形式存放的(在windows平台上dll文件形式,在UNIX机器上是so文件形式)。通过调用本地的库文件的内部方法,使java可以实现和本地机器的紧密联...

2019-07-03 11:06:02 181

原创 C语言基础知识总结(三)

1、联合体(共用体)//不同类型的变量共同占用一段内存(相互覆盖),联合变量任何时刻只有一个成员存在,节省内存//联合体变量的大小=最大的成员所占的字节数union MyValue{ int x; int y; double z;};void main(){ union MyValue d1; d1.x = 90; d1.y = 100; //最后一次赋值有效...

2019-06-25 08:47:36 131

原创 C语言基础知识总结(二)

C语言之结构体:C语言结构体(Struct)从本质上讲是一种自定义的数据类型,只不过这种数据类型比较复杂,是由 int、char、float 等基本类型组成的。你可以认为结构体是一种聚合类型。1、其一般定义方式为://定义struct Man{ //成员 char name[20]; //char *name; int age; //int(*func)();};/...

2019-06-20 14:40:06 175

原创 Android事件分发机制(二)

ViewGroup事件分发原理首先我们先自定义一个ViewGroup的子类。public class MyRelativeLayout extends RelativeLayout { public MyRelativeLayout(Context context, AttributeSet attrs) { super(context, attrs); ...

2019-06-20 11:10:52 105

原创 Android事件分发机制(一)

一直对事件分发的源码不是特别了解,今天重点关注了一下,感觉有点自己的体会吧,写下来记录一下心得。事件分发大体可以分为View的事件分发和ViewGroup的事件分发,我们先来查看下比较简单点的View的事件1、事件流程我们首先通过点击一个Button按钮,查看一下Button的事件怎么走的:public class MyButton extends Button { p...

2019-06-19 23:06:51 90

原创 简单分析下IntentService 实现

我们都知道用IntentService 来处理异步操作非常高效方便,面试中我们也经常会遇到其相关问题,今天着重分析下其内部实现流程。1、IntentService对比Servicea、IntentService继承Serviceb、处理异步操作,Service要通过开启Thread线程去处理,而IntentService内部实现了HandlerThread,而且会帮助其管理loope...

2019-06-18 16:55:48 95

原创 C语言基础知识总结(一)

好久没有写NDK啦,这两天在拿起来做开发,感觉基础知识有点生疏啦,正好趁周末温故一下,做个小笔记方便以后查看。1、占位符printf("%d\n", i);我们做一些日志输出的时候往往会这么书写,这个%d是起到一个占位的作用。C语言中基本数据类型的占位符分别是:1、int %d2、float %f3、short %d4、long %ld5、char %c6、doubl...

2019-06-16 19:42:29 178

原创 Android 线程知识点梳理

多线程是个涉及技术点模块多的知识点我们将分为:Java线程基本概念、线程安全、多线程、线程池进行逐步分析。1、基本概念:一个基本的CPU执行单元 & 程序执行流的最小单元1、比进程更小的可独立运行的基本单位,可理解为:轻量级进程2、组成:线程ID + 程序计数器 + 寄存器集合 + 堆栈3、线程自己不拥有系统资源,与其他线程共享进程所拥有的全部资源。作用:减少程序...

2019-06-14 15:38:34 331

原创 Android配置文件中的一些小秘密

1、manifestPlaceholders这个占位符我们在平时开发中用的多吗?先简单介绍一下这个东东的使用场景:在实际项目中,AndroidManifest里十几个地方的值是需要动态的改变(生成apk文件的时候)。如果每次去改也可以,但是累啊,在我之前他们打包是用手动替换,但我觉得这是是在没办法的办法,但是有了manifestPlaceholders占位符后就简单的多了,只需要改一个...

2019-06-13 18:10:14 148

原创 梳理Android开发中经常用的语法糖

语法糖(Syntactic Sugar),也称糖衣语法,指在计算机语言中添加的某种语法,这种语法对语言本身功能来说没有什么影响,只是为了方便程序员的开发,提高开发效率。说白了,语法糖就是对现有语法的一个封装。语法糖在我们Android开发中经常遇到的我暂且归纳为以下几类:1、泛型泛型我们平时会经常遇到,在写一些框架的时候是必不可少的元素。但是其一个实现机制很容易被我们忽视.类型擦...

2019-06-13 16:19:41 474

原创 Java类加载机制

我们在平时面试中经常会被问到Android热修复的实现原理、Android插件化原理,这其是在对我们JVM类加载机制的一种考察。1、类加载的过程主要分为:(1)加载把class字节码文件从各个来源通过类加载器装载入内存中。说到加载就必须说一下java的类加载器,类加载器的任务就是根据一个类的全限定名来读取此类的二进制字节流到JVM中,然后转换为一个与目标类对应的java.lan...

2019-06-12 15:07:02 106

原创 Java面试中常问到的数据结构问题总结

1、集合的分类和上下级关系Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMap首先来看一下Collection:public interface Collection<E> extends Iterable<E&...

2019-06-12 10:41:04 2225

原创 JVM内存结构和基本数据类型存储

1、JVM内存结构(1)方法区 用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。 当方法区无法满足内存分配需求时,将抛出OutOfMemoryError异常。 运行时常量池是方法区的一部分,所以也是全局共享的。 运行时常量池: class文件中除了...

2019-06-11 17:20:43 909

原创 实际工作中常用的Java单例应用

单列模式是我们开发中常见的设计模式之一,在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的一个类只有一个实例。即一个类只有一个对象实例。优点1、单例模式会阻止其他对象实例化其自己的单例对象的副本,从而确保所有对象都访问唯一实例。2、因为类控制了实例化过程,所以类可以灵活更改实例化过程。我们平时用到的方式主要有以下两种:1、双重检查加锁方式...

2019-06-11 14:32:32 697

多米音乐主代码

多米音乐主代码,简单写了多米音乐的后台的一些实现

2014-10-03

空空如也

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

TA关注的人

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