Android NDK Get Error Message


查询错误信息

NDK一旦报错 可以使用以下命令 到项目根目录下 会生出obj/local/armeabi文件夹
运行以下命令:

adb shell logcat |  ndk-stack -sym obj/local/armeabi

可以展示错在哪一行 具体错误信息 前提是adb和ndk环境变量都在


end

Windows下 Android NDK 在Eclipse下 debug


最近需要调试Android NDK中C里面的代码,因为里面代码一旦出错,就直接dead,而且很难定位,所以需要debug下,翻了翻书,发现有些书上要什么为windows用户修复,觉得好扯淡,毕竟ADT版本已经这么高了

于是网上搜了搜 网上看到很多博客,说是要修改什么,或者是装什么cygwin一类的

但是其中一篇提到了这么一个观点 博客地址忘记了 意思就是修改两步就可以了


more >>

jenkins和gradle打包


初衷:
对于中小型公司来说,需要打包给测试让,但是每次打包都需要研发人员去打,这样会导致一些问题的出现,比如开发人员没有时间,测试人员就需要等待,浪费时间。

Jenkins简介

Jenkins 是一个开源项目,提供了一种易于使用的持续集成系统,使开发者从繁杂的集成中解脱出来,专注于更为重要的业务逻辑实现上。同时 Jenkins 能实施监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。Jenkins 的前身是Hudson是一个可扩展的持续集成引擎。

jenkins和gradle详细简介看这里

重点是开源-。-,所以可以很放心的使用。

jenkins下载地址

gradle的配置这里不在赘述

jenkins的简单配置这里也不在赘述,这里重点说下遇到的问题


more >>

Hexo的部分用法


mark一下部分问题

hexo g 是hexo generate的缩写 可以生成博客

hexo s 是hexo server的缩写 运行后在本地localhost:4000 里面访问生成的博客

hexo d 是hexo deploy的缩写 是往github上部署博客

generate和server都可以在com命令行下运行

但是deploy却会报错“Error: spawn git ENOENT#”

Error: spawn git ENOENT

记得要在git bash里面运行hexo d 就不会报错了…

Image问题

我的images文件夹和_post在同一目录,部署完后的图片路径要“../../../../../images/xxx.jpg”才行

yilia主题的问题

我发现一个问题是 用yilia主题后 ####这个标签失效了 试试上是这个标签的标准用法是要在#号之后加空格 加了空格就可以识别了

mark


end

Android onMeasure


VeiewGroup

高宽参数

UNSPECIFIED 0

这说明parent没有对child强加任何限制,child可以是它想要的任何尺寸。这个上限 是子布局的最小需要值 即便自布局设置match_parent也无用 设置的小于自布局的最小需要值 那就是布局的最小需要值 所以不可能会显示不完整

EXACTLY 1073741824

Parent为child决定了一个绝对尺寸,child将会被赋予这些边界限制,不管child自己想要多大。 赋值多大就是多大 即便是父布局不够 也继续外延,如果父布局不够 可能显示不全

AT_MOST -2147483648

Child可以是自己任意的大小,但是有个绝对尺寸的上限 这个上限 是子布局的最小需要值 即便自布局设置match_parent也无用 设置的小于自布局的最小需要值 那就是设置的值 所以可能会显示不完整


more >>

Android onDraw


Paint 画笔

Paint是canvas里面最重要的参数,没有之一,canvas除非是利用图片绘制,否则都需要画笔这个参数,并且是@NOTNULL的限制,利用这个画笔,你才能绘制出你想要的东西

setMaskFilter(MaskFilter maskfilter);

设置MaskFilter,可以用不同的MaskFilter实现滤镜的效果,如滤化,立体等

setShader(Shader shader);

设置图像效果,使用Shader可以绘制出各种渐变效果

setShadowLayer(float radius ,float dx,float dy,int color);

在图形下面设置阴影层,产生阴影效果,radius为阴影的角度,dx和dy为阴影在x轴和y轴上的距离,color为阴影的颜色

setColorFilter(ColorFilter colorfilter);

设置颜色过滤器,可以在绘制颜色时实现不用颜色的变换效果

setStyle(Paint.Style style);

设置画笔的样式,为FILL,FILL_OR_STROKE,或STROKE

setStrokeCap(Paint.Cap cap);

当画笔样式为STROKE或FILL_OR_STROKE时,设置笔刷的图形样式,如圆形样式 Cap.ROUND,或方形样式Cap.SQUARE


more >>

对Android Activity ViewGroup View的事件的分发测试


对事件的分发支持如下:

####### 这里的View是只textview类似的不能有子View的View,不是最大的父类View.
重写textview的时候 可以继承到dispatchTouchEvent 这是从View里面拿到的

textview类似的view里面没有这个方法 也就不会处理 但你继承了 就会处理

ACTION_CANCEL的执行 只是在你滑动超过了这个控件之外的时候 才会触发

每个轮流执行下去的都会执行ACTION_DOWN 但是只有最后处理事件的地方或者返回true的地方才会执行move和up 事件

所谓消费了此事件就是down move up都执行了 其他的 都只会执行一个down事件








ActivityViewGroupView
dispatchTouchEvent YesYesYes
onInterceptTouchEvent NoYesNo
onTouchEvent YesYesYes

more >>

对Android ViewGroup ViewChildGroup View的事件的分发测试


对事件的分发支持如下:

这里的View是指textview类似的不能有子View的View,不是最大的父类View.

重写textview的时候 可以继承到dispatchTouchEvent 这是从View里面拿到的

textview类似的view里面没有这个方法 也就不会处理 但你继承了 就会处理

ACTION_CANCEL的执行 只是在你滑动超过了这个控件之外的时候 才会触发

每个轮流执行下去的都会执行ACTION_DOWN 但是只有最后处理事件的地方或者返回true的地方才会执行move和up 事件

所谓消费了此事件就是down move up都执行了 其他的 都只会执行一个down事件



ViewGroupViewChildGroupView
dispatchTouchEvent YesYesYes
onInterceptTouchEvent YesYesNo
onTouchEvent YesYesYes


more >>