00:00
那我们要讲的今天的一个新内容啊,什么一个新内容呢,就是我们要让C回调,然后更新我们的UI,就C啊,他就调我们的什么,调我们的D中的某一个方法,做这样的一个事情。那么这个这个这个小案例的目目的是干嘛嘞,其实就让大家知道我们在这个地方里面的这个上传进来的这个上下文。是什么意思啊,从这个object,这是什么意思啊,就就是说要要认识这个参数啊,因为这个参数一直没用,对不对,好,那同学们我们就来看一看了,这这是我们上一次所讲的这个C调加法对吧?好,我们去运行起来,在这个地方里面呢,大家看到的,我们先把上次的运行起来。那么也就是说我要在这个地方里面去做一个。去调一个我们的at里面的方法,好我们看一下这是这上一次的,好在这里面是C调加va对吧,那我们这地方里面做这样的一个事情,在我们的这个地方里面,我要去写一个方法,Public well,秀兔透to,然后呢,在这个地方里面注意了,我要去打个日子,打日志,然后我们就叫修毒师。
01:36
求透视,好,那么有了过后在我们这个地方里面,我要吐四点贝一下,好然make一下这个的话呢,啊上下文诶没然后去这个时候在地方里面就是有有一个啊,就是跟它内容一样。跟那种一样好。
02:01
那有的客户这个地方里面呢,修好,然后这个地方里面把它给修出来,对吧?好OK,那么有了这个方法,我就会把它调用啊好当我们一点击的时候,到时候我们呢,就去调它啊注意了,我们去复制一下。来到这里面,我们再写一个肥料方法,这肥料方法我们叫public native的返回叫Co扣back,这个是吧,好,那么有那个后呢,我们在这个地方里面,好,它的作用就是让C代码调用,调用我们的什么,让C代码去调用。呃,调用我们的may阿尔卡曲奇里面这哪个方法修图示这问题吧,跟得上吧,同学们好,那么接下来要去做这种事情,我是把这个方法给给创建出来,这个out加ant回车自动帮我们创建,哇塞,爽爆了对吧?好把这个方法剪切到哪里嘞?到这里啊就是它,你看就它太爽了,你看天之无解是吧?好,那么有哪个会我们就要记住了,那么我们看一下对这个方法进行注一个注释。
03:31
这个参数我们知道,相当于它里面有很多什么,我们调用的方法就通过它。是吧,得到一些啊,一些我们转换呐,一些常用的方法,那么但是这个注意了,这个参数其实就是谁调用了我们的。这个谁调用了我们这个方法。也就是说,谁调了这个方法,就是谁调用了当前这个方法,对应的G的Java的接口就是就是谁。
04:13
调用这个方法,因为调用这个方法才触发它吧,对不对,那么就是谁的实力就是谁的实力,那么当前是谁,你看啊,在我们这个地方,一会儿我们要去用它。我们肯定得去尖安,然后这地方里面做一个抠抠抠绣图是吧,是不是要去做这样的一个事情呢?做这样事情,那做这样的事情的话,那当谁是调查是j ni啊,所以当前的实力是谁接ni是吧,点类似就是它那个事例对不对,这没问题吧,OK。那么有了之后,接下来我们执行的步骤怎么做啊,其实也是要得到是得到,我们要想调它的方法是得到这个的一个实例啊,同学们是到这个的实例啊,所以我们依然需要得到这件码吧,好,大家看好。
05:14
这个时候我要传的是谁呢?是不是我们这个类的一个这个类的一个全类名呢,对不对,好这个改为什么斜杠,你看同学们呢。这个学的很好对吧,一下就知道了,好接下来这个注意这个是一个什么方法。啊,不能,这个肯定不能用静态方法,对不对,Get的ma ID,然后我们看一下啊。好看一下在这个地方里面的话呢,这地方里面的话呢,都一样对吧,其因为杰克拉方法名啊方法名注意了调的是谁是这个方法啊,你调谁就写谁的名字,要不然咋知道是谁呀,对不对,好,那接下来这个方名有空注意生完签名呢,签名又是一个难难点了,对吧。
06:10
好,那么这个时候签名的是在这里面签名呢,还是签的里面签名呢?注意你调谁就要谁的签名。你调谁就选谁的方法,你叫谁就选谁的签名啊,注意这个拷贝他的全联名,然后来到他哪里啊,它这里面是有一个叫class debug下对不对?好,我们去把它给打开,就然后点进去好。按shift的键,右键打开好Java p-S好粘贴一下,一有了,但是大家仔细看一下这个地方,你们我们能看到那个溴组织吗?怎么办?要把那什么一下,因为我们这个方法刚添加了嘛,是不是好,那如果出现这样的一个bug,大家遇到过吗?怎么办呢?你你先把它给关了知道吧,它要不它关联上道吧。
07:14
好,那这个呢,就是它关联过后你就。我看看啊,在这个地方里面,嗯,这个时候注意了,它这地方里面。好,我看看,我看下我这个CT代码里面有没有错的地方。至少这没有对吧,那么也就是说我把这个build要。我看看。好,那么这个时候呢,我们直接我们就过去运行起来,看看那个正方式去编它编一下啊,我们去运行的方式去编译它啊,我们看看。好。
08:01
我们去运行的方式去把它编一编。好,我们看一下O耶,那运行起来没问题,过后边肯定没问题了,对不对,好,首先我们来的地方还是把这个哥们呢拷贝过来,然后来到这个丢的这个地方啊,大家注意啊,像这样的话,你就可以运行起来一次,对不对,再到那里啊拉好我们到这个地方。好,其实在他的半ug目录下,对吧,我们去把它打开,我们打开好多次了。好在在在这里啊,不是啊,这这直接点进去好点进去好来到就在第半步下了吧,好右键好打开好加瓦P-S好我就把它删。看到没有,刚才没有对吧,那那也就是说刚才没有,现在怎么有了。是之前没有把它生成点文件呢,所以没有对不对,所以我们这个方法签名,它是针对于点文件的。
09:11
对吧,所以啊,同学们,如果你们用English开发,你会发现你要来到bin里面去做签名,并不录像,因为在并不是有English这个工具生成的class文件呢,但这个地方要来到这个地方,明白了吧,好,那接下来我们就把这个签名呢,千辛万苦得到签名,把它复制。好,来这地方里面呢,写一下是不是啊,好就把它什么改一下欧耶,所以不要有空格,好这个方法就被我们征服了,拿到了,好接下来我们这地方里面呢,要去做的话,就是要实例化我们这个类,注意了,在我们地方里面大家看好啊,实例化该类就是啊,J obj j obj,我啊它叫想叫什么名字啊,我就叫这个名字也行,然后这个星号env,然后这里面。
10:08
A,对吧,好,这个参数里面en这个是接好。看一下就是这两个方法对吧,好,就是它复制一下来到我们的这地方里面,好,那有的这个有过后,这是使力化我们的这个,接下来第四步调用我们的什么方法好,那这个方法它是没有反回值啊好,那么扣我们的我的方法好。复制一下。就是想在地方里面呢,我们回回来对吧,好在地方里面把它给这样子,这个里面就是我们的一个enna,这个的话呢,JOB。接接对吧,这个参数呢,就是我们这个地方里面这个参数对吧,好那么这是有了过后,在我们地方里面一点是不是可以调用了,好大家看好我们要去运行起来。
11:11
运起来过后,但是我们这这这个地方你们是已经调用了,好大家可以看一个奇怪的现象啊,这哥们呢,就一会就会出现一个问题就是。他日志打了,但土是崩了,好给大家看看啊,大家看一下啊,有的地方里面我一点。好一会会崩掉。哒哒嘣。崩崩了是吧,好再看一下,但是日志你看打蜡。那日字打了又证明什么?证明这个方法确实被调用了,对不对,然后我们再看一下它日志报什么错。报的是一个什么,给大家看一下什么错啊,空子的异常诶,他就得到我们资源文件的输出。
12:00
诶,这个地方出错了,对不对?好总结一下,这个地方出错了,就是修吐司的时候出错了,好同学们,在这个地方里面为什么会出错呀。我问大家,我们启动一个是怎么启动啊,这是activity对不对,那这个时候呢,这个正是方式启动了activity,它就有activity的生命周期,如果你去瞄这activity,它有生命周期吗。他就是普通位了,对不对。那么我反射的方式去把这个类出来,那么它还是ST,还有S的生命周期吗?那没有H生命周期同样是没有H的上下文呢?那么在我们这个地方里面的话,它实例化的这个类。他还是上耀文吗?我把这个类是反射出来的,实例化呢,它就不是的。
13:01
那个正常类了,就说它是一个activity,是同时也是个类啊,我们就启动它是是不是也可以用它。但是你用一个X方相当于把它当成普通类了,知道吗?白导这个题的因我个反。出来它就不是上下文了,所以我们这个地方里面去得到它的资源文件的时候,你会发现空了,因为它根本就不是一个什么上下文了嘛,怎么办。怎么解决好这样子把这个代码呢。简洁。到这里来。减去过后,这是它里面的方法,复制一下。那么这个是不就是什么不用它了,用谁。啊,直接调查。
14:04
那么那么其其实前面是省略了一个什么意思,那么谁调这个方法。谁调这个方法是就是从谁的实力啊,是不是是这个就是那这样在是不是就变了,变成谁了。变成谁了?May,变成什么?好,那也就是说我们只需要把这个改一下。改成谁之前是进里面,但是这个方法现在变成哪里了。好,编辑里了,好,我们可以也可以把它怎么直接创建出来。特别爽。你看它是自动把这个地方改了就可以了,对吧,好,那么我们。这个的话呢,刘总把上面这份复制过来。复制过来,注意同样叫call back这个图示,但是这段是一个J啊,这里面是一个什么make,对不对,不一样吧,好,那注意同样要做这个事情,要做事情,但是这个可以什么不用实体化了,直接用它传过来的,OK,好,我们去运起来。
15:14
这时候他就吊水啦。到这个对不对,然后从从这个三角,这是这种这种的话,它就是一个什么三角分。好,我们去调的话,它就可以吐司也可以更新了,包括以后你这里设置一个文本是不是也可以啦。对不对,这个文本就可以了,好就拼起来,大家看好啊,我们就搞定了。看到没有,日字也打了,对不对,日子打了明白了吗?明白了吗?同学们,因为我们反射是六出来,它不是一个H提拉,它是一个普通的内了,它没有上下文,这个时候怎么办呢?我们要根据床这个参数进去。你调就说这个方法谁掉,那么就从谁的实地过来,对不对,刚好就把它什么替换成这。
16:03
明白了吧,好,那同学们这个知识点就是我们所讲的啊,回调BUI好下课。
我来说两句