bcoder

Android开源框架总结

 分类:Android, Java 阅读 (1,212)  No Responses »
7月 142017
 

下面是我曾经使用过的感觉不错的Android开源框架,零零星星会做一些总结,如果大家有好的观点欢迎留言。

1. greenDao – 数据库对象关系映射(ORM)

github地址:https://github.com/greenrobot/greenDAO

2. logger – 日志记录类

github地址:https://github.com/orhanobut/logger

3. gson – json数据解析工具

github地址:https://github.com/google/gson

4. okhttp – 网络请求类

https://github.com/square/okhttp

 Posted by on 2017-07-14

Laravel中同时使用union和paginate的问题

 分类:PHP 阅读 (1,547)  Laravel中同时使用union和paginate的问题已关闭评论
6月 272017
 

默认情况下,两者不能同时使用,会出现sql语句报错的问题

解决方法一:

在mysql中建一个视图来承载union数据查询,然后用paginate来分页

解决方法二:

使用array_slice来手动给get的查询结果分页(未测试此方案)

参考链接:

https://stackoverflow.com/questions/25338456/laravel-union-paginate-at-the-same-time

https://www.cnblogs.com/smallyi/p/7427377.html

Android中的assets目录

 分类:Android, Java 阅读 (1,428)  Android中的assets目录已关闭评论
6月 252017
 

放在res目录下的资源会生成id,放assets的不会…

存放一些二进制外挂文件,和res下的raw作用差不多。

在使用Android Studio开发时,放在下面这个位置src/main/assets

 Posted by on 2017-06-25
6月 182017
 

1. 打开菜单Android Studio->Preferences…

2. 打开左侧导航列表Tools->External Tools

3. 点击增加外部工具按钮,在弹出的按钮输入下图中的内容:

4. 补充:去掉Open console for tool output前面的对勾

5.  点击ok完成后,我们在文件列表或者代码编辑器上方的文件名上右键,在菜单中选择”External Tools”,然后选择新建的工具就可以方便的在文件管理器中查看文件了

 Posted by on 2017-06-18
6月 162017
 

1. 打开菜单File->Settings

2. 打开左侧导航列表Tools->External Tools

3. 点击增加外部工具按钮,在弹出的按钮输入下图中的内容:

4. 补充:去掉Open console前面的对勾

5.  点击ok完成后,我们在文件列表或者代码编辑器上方的文件名上右键,在菜单中选择”External Tools”,然后选择新建的工具就可以方便的在文件管理器中查看文件了

 Posted by on 2017-06-16

error: insufficient permissions for device问题解决

 分类:Uncategorized 阅读 (5,511)  error: insufficient permissions for device问题解决已关闭评论
6月 122017
 

一、问题

通过adb连接android设备时,出现了如下错误:

error: insufficient permissions for device: user in plugdev group; are your udev rules wrong?
See [http://developer.android.com/tools/device.html] for more information

二、解决办法

首先在插上usb设备和拔下设备时各执行一次lsusb命令,可以看到插上设备比拔掉设备时结果多出一行,如下:

可以看到多了一行

Bus 001 Device 007: ID 2207:0010

然后我们编辑/etc/udev/rules.d/下的51-android.rules文件(如果没有则新建一个此文件),执行命令:

然后在文件中增加一行如下内容:

保存文件后,给51-android.rules加上权限

再重新插上usb线就可以了。

 Posted by on 2017-06-12
6月 062017
 

  博文背景:博主要实现app的左侧导航按钮功能,因为要实现某个导航按钮被选中的效果,所以没有使用ListView,而是用的RadioGoup来实现.好,RadioGroup嵌套多个RadioButton很简单的实现了导航列表的功能.另外一个需求是给导航按钮们增加分隔线,博主首先使用RadioButton的drawableTop,分隔线不在最顶部,而且水平不居中,这个属性肯定是不行。然后比较笨的方法就是插入多个ImageView,设置图片为分隔线,但是……导航按钮多的话,这样做真的很麻烦。

  于是博主开始研究RadioGroup的属性,发现有一个divider属性,这在ListView里是分隔线的意思,于是给RadioGroup设置这个属性,运行程序,分隔线不显示,心想RadioGroup应该不支持这个属性,毕竟通常情况下divider是对List形式组件才有效的。再想想要加n个ImageView实在不甘心,度娘了一下,原来要再加个showDivider属性。

  showDivider有三个可选项,beginning、middle、end,分别对应最开始的分隔线,各RadioButton中间的分隔线,最结尾的分隔线。我们可以如下设置:

  不是true或者false哦 ;-) 

  下面是一个完整的Activity部局的xml代码,在你的res/drawable中放一个叫timg.png的图片,然后把下面代码粘贴到你的Activity的xml文件中,运行一下就可以看到效果了。

  注意事项:

  1. LinearLayout同样支持此属性,可能类似组件都支持
  2. 如果最开始或者最结尾的组件的visiblity为gone,则showDivider的beginning和end的选项无效
6月 062017
 

本文使用数据库为:Mysql
当我们想使用insert into为一个表的所有字段插入一条数据时,我们可以这样写sql语句
insert into table1 values(‘field’, ‘field2’, ‘field3’);
但是假如第一列的字段是一个自增字段,如下这样就不行了
insert into table1 values(1, ‘field’, ‘field2’, ‘field3’);
第一列的值1,如果已存在值为1的记录,则会报主键已存在的错误,但是如果我们不为第一列赋值的话,如下这样
insert into table1 values(‘field’, ‘field2’, ‘field3’);
又会报列表不匹配的错误,我们可以选择在sql语句中列出所有的列名的办法,如下:
insert into table1 names(field1, field2, field3) values(‘field’, ‘field2’, ‘field3’);
但是对于字段特别多表就很麻烦了
其实对于自增字段我们可以给他传入一个null,这样即不会执行sql语句错误,也可以达到插入新的id的效果,如下:

 

 Posted by on 2017-06-06
5月 302017
 

  这个精度的损失给本人造成了精神损失! :cry: 

  整数相除,然后用ceil向上取整,本以为多简单个事,但是搞了半天,整数直接相除得到的结果必定是个整数,即使你把这个结果赋值给一个符点型的变量。

  后来才想起来需要强制转换其中一个为符点数然后再相除才可以。看下面的例子:

  输出结果:

  这个例子很简单,我就不解释啦!

  关键是有什么办法可以避免这个问题再发生?不能只凭记忆吧?!

 

 

 Posted by on 2017-05-30

vlc命令大全

 分类:Others, Others 阅读 (52,092)  No Responses »
5月 082017
 

使用如下命令即可获得此帮助信息

本博文是基于VLC media player 2.2.2的

如果需要查看最新的,请使用上面所说的命令重新获取

 

 Posted by on 2017-05-08