加速android gradle

在做webapp时打包android时,platform add android时需要下载android gradle,但是下载的速度特别的慢,要好久,我们可以拷贝下载链接,使用浏览器或者迅雷下载,这样会比较快。

当下载好压缩包后,我们把它拷贝到相应的位置,首先我们找到.gradle文件夹:

  • /home//.gradle/ (Linux)
  • /Users//.gradle/ (Mac)
  • C:\Users\.gradle (Windows)

我们在这个文件夹下线先创建gradle.properties文件,内容:

1
org.gradle.daemon=true

然后我们找到添加platform产生的对应的文件夹,和压缩报名版本一样的文件夹,点进去里面存在一个像id一样长串名称的文件夹,点进去再点进dist文件夹,将压缩包拷贝进去,然后我们remove platform重新添加就可以了,这里后面的路径都是基于windows的,具体的Mac和Linux还没有看过。


这样我们打包的速度就快了,不然下载一个60多MB的gradle,都要10-30分钟,这样我们1分钟可能就完成了。

npm换源

npm为node.js的模块依赖管理工具,全称node package manager。

npm的源由于在国外,所以用起来比较慢,这里可以使用国内比较优秀的npm镜像资源。

npm淘宝镜像

如何使用呢

1.通过cnpm使用
安装cnpm

1
2
3
npm install -g cnpm --registry=https://registry.npm.taobao.org

cnpm -v

以后就可以通过cnpm代替npm来安装东西,只是cnpm安装的东西在位置上和npm有些区别,所以有时会导致requre找不到目标文件。

2.临时使用npm换源下载

1
npm --registry https://registry.npm.taobao.org install 'some'

3.永久换源

1
2
3
npm config set registry https://registry.npm.taobao.org

npm config get registry // 查看换源是否成功

关于npm的源有一个配置文件.npmrc,源配置路径都在这个文件里。

app蓝牙与硬件交互的一些积累

最近又在做需要蓝牙和硬件交互的app应用,想正好做一些这方面的积累,方便以后直接可以使用。

手机app通过手机蓝牙向硬件的蓝牙发送数据,数据的处理都是有硬件底层的蓝牙缓存着再向硬件发送命令,命令执行完后硬件通过蓝牙向手机app发送通知命令。具体的底层的流程协议不做硬件开发还是不了解。

关于与蓝牙的数据交互都是十六进制的。这里就会涉及到十进制和十六进制的转换。

学习canvas遇到的一些问题一

最近在写一个canvas编辑图片的demo时遇到了两个canvas的奇怪问题,这里记载一下。


#####问题一:canvas的宽高度设置问题

有两种可以正确的实现的方式

  • 直接在标签上实现

    1
    <canvas width="200" height="200"></canvas>
  • 通过js设置实现

    1
    2
    3
    4
    5
    6
    7
    8
    <canvas id="canvas"></canvas>

    <script>
    canvas = document.getElementById("canvas");
    context = canvas.getContext("2d");
    canvas.width = 200;
    canvas.height = 200;
    </script>

通过css实现的都是错误的实现方式,都会使canvas被拉伸,使得canvas画图不准

jquery中prop()与attr()的区别

当在做多选时用jquery的attr()时发现只能实现一次,而且是在input初始化时没点击过的情况下,可以实现一次,再次使用就不管用了。
这时搜资料发现可以用prop()解决问题。

关于这个问题,我们对attr()和prop()做一些探究: