GitOPEN's Home.

GitOPEN's Home.

Cease to struggle and you cease to live.

Little Tips 记录
前言 我的博客好久没有更新过了!太过时的东西,我都想把它们干掉。 这里就用来记录在编程过程中遇到的小问题或者小技巧。 碎片过滤字符串中的emoji表情和符号[Python]最近在抓取了几十万条微博数据,目的是对其进行情感分析,这就需要过滤掉内容中表情等特殊符号。在Google了一圈以后,发现很多方法过滤的效果不好,因此自己记录一下,如何更加全面的过滤掉表情符号。这个方法综合使用了正则表达式和emoji库。 1234567891011121314151617181920import emojidef filter_emoji(text): """ 过滤表情。 ...
VPS上部署maven私服
前言“明明我挂了梯子,可gradle build还是卡住不动,过会儿就干脆error了”,小明如是说。Android Studio的gradle下载依赖过慢是广大Android程序员的痛点。于是有很多公司都构建了内网的Nexus Repository Manager OSS私服,来解决痛点,缩短该司程序员等待的闲暇时间,提高压榨的效率。但是,对于各位码神来说,离开公司还是要做独立项目的,于是痛点又回来。将maven部署在自己的VPS,彻底解决gradle各种慢,供自己享用,随时随地无痛码起来,不枉码神的名号。 其实过程很简单 首先,有自己的vps,最好在境外,哦不,是必须在境外(没有篱笆...
在自己的VPS上搭建Hexo博客
前言在大家都玩推特、非死不可、印死、微博、微信的时代,博客已经被冷落了。但是作为一枚 coder,仍然需要一个安分守己的寸土,去记录自己学习的点点滴滴。从之前的新浪博客、网易博客,到专门用于技术分享的 CSDN,再到属于自己的 WordPress,最终进化到 Hexo 或者 Jelly 静态页面,博客已经从“繁杂缤纷”逐步简化到“大道至简”。之前我一直使用github pages加hexo的方式来写博客,但是 github pages 有一个最大的问题就是“拒绝搜索引擎和速度太慢”。因此,在自己的 VPS 上搭建 Hexo,可以so easy 的达到我们的随心所欲。 选择 VPS之前...
VirtualBox中CentOS配置git服务器
前言在管理自己的代码的时候,我一直使用github。有的时候,私有项目不想公开,如果还要放到GitHub上,那就必须要花钱。解决这个问题的方法其实也很简单:在自己电脑上用虚拟机(VirtualBox)跑一个服务器(CentOS),配置好ssh和git server。正所谓:史上距离你最近的服务器。 配置SSHSSH是程序员链接服务器的居家必备之花露水啊!因此在VirtualBox中安装好CentOS(最小化安装)后,首要工作就是配置它的SSH。 安装SSH 更新系统: 1yum update 安装openssh-server: 1yum install -y openssl opens...
淘宝商品信息定向爬虫
前言最近在学习数据分析的时候,提前学习了爬虫,其实在很早之前就学习过Python了,但是后来学习Android了,没有将Python很好的实践。但是学习了爬虫之后,我觉得自己写爬虫收集数据,放在自己的服务器上,然后再用自己的App展示出来,就不用再苦于没有数据了。但是,要想写出好的爬虫,也是一件不容易的事情,需要多加练习。 这次写这个淘宝商品信息定向爬虫仅仅是为了练习一下一些爬虫的常用方法,这里它涉及了如下的知识点: 爬虫的一个常用思路; Python的requests库和正则表达式的用法; pymongo以及mongoDB的用法; tkinter的用法; xlsxwriter库以及导...
自定义Toolbar添加双击事件
前言今天在播放器中,突然想到了如果列表项过多,那么用户手指连续滑着回到顶部未免太累!类似微信朋友圈的双击TitleBar返回顶部,既然微信这超级App都实现了,那还等什么呢?动手做起来吧。我们这里是双击Toolbar返回顶部,不仅如此,其实在回调方法中可以做自己想做的事情。 预览图 SuperToolbar.java代码:12345678910111213141516171819202122232425262728293031323334353637383940414243public class SuperToolbar extends Toolbar implements TapLi...
自定义RecyclerView监听滑动到底部Bottom
前言最近在做一个本地的万能播放器,需要监听RecyclerView滑动到底部,向用户提示已经滑动到最底部;看了网上其他童鞋的写法,比较繁琐。现在给出我的实现方法,非常简单实用,在监听回调方法中,可以做很多想做的事情: 1.提示用户已经到达底部(Snack或者Toast); 2.可以加载更多(我最讨厌格外加一个item来显示加载更多,于是当到达底部后直接给Adapter添加数据就好); 3.可以额外再添加一个控件,来实现快速返回顶部(由你自己实现); 4.等等。。。。(只要你判断好了到达底部,就可以在底部做自己想干的事情)。 预览图 SuperRecycler.java代码:12...
Daily Tips(Updated)
意欲如何? 这篇博文取名为“Daily Tips”,意为日常技巧、小技巧,意在记录开发中或者与电脑打交道过程中遇到的一些小问题及解决途径,这些小问题是值得记录但又无须长篇大论、深究的。 记录方式将以三级标题是问题,其下内容为答案的模式,简单明了。 本篇博文将不定时更新,每次更新会将博文时间提到修改之时。 如若各位有任何问题和看法,请及时评论或者[at]我微博讨论交流。 您的问题和答案采取后也可以出现在本篇微博中,会注明您的姓名和链接,为您带来流量。 正文开始 [No.001] ubuntu(linux)下查看Gtk版本(version)信息? 打开终端输入以下命令即可: 1dpkg ...
Android M (API23) 中对权限的授权处理
前言Android M的发布,最重要的提升就是权限的控制,这么多年来Android App的权限滥用状况将逐步得到改善。 在API 23中,如果我们将compileSdkVersion和targetSdkVersion同时指定为23,而且我们没有显式的提醒用户去授予权限, 那么将导致App运行的崩溃。 因此,接下来,就写一个原生的PermissionsUtil工具类,来解决这个问题。 重要权限列表 另外,Android官方手册中也有描述,可以详细阅读:Permissions 效果 我喜欢用Gif动图来直观的展示效果! 函数 ActivityCompat.checkSelfPe...
《Monkey Android》第15课Spinner和AutoCompleteTextView
通过本节课可以学习到的内容: Spinner的用法 AutoCompleteTextView的用法 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/opengit/MonkeyAndroid Spinner的用法Spinner,俗称下拉列表,它提供了一组固定的值或选项,允许用户从中选择一个作为默认的状态。 AutoCompleteTextView的用法AutoCompleteTextView,自动完成文本框,用户在输入时给予补全提醒。 效果图 Activity的源码12345678910111213141...
《Monkey Android》第14课ToggleButton和RatingBar
通过本节课可以学习到的内容: ToggleButton的用法 RatingBar的用法 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/opengit/MonkeyAndroid ToggleButton的用法ToggleButton,状态开关按钮,例如ON/OFF,它允许用户在两者之间进行切换。Switch,开关,类似于生活中的白色墙壁开关。 RatingBar的用法RatingBar,它是SeekBar和ProgressBar的扩展,用星型来显示等级评定。 效果预览 Activity源码1234567...
《Monkey Android》第13课CheckBox和RadioButton
通过本节课可以学习到的内容: CheckBox的用法 RadioButton的用法 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/opengit/MonkeyAndroid 效果图 CheckBox和RadioButton的用法CheckBox,复选框,它允许用户选择一个或者多个。RadioButton,单选按钮,只能选取一个选项。 xml文件源码: 一些用到的xml属性的含义已经在注释中给出。 12345678910111213141516171819202122232425262728293031...
《Monkey Android》第12课ImageView
通过本节课可以学习到的内容: ImageView的用法 ImageView的XML属性 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/opengit/MonkeyAndroid ImageView的用法ImageView顾名思义,就是图片视图,用来显示静态图片。 12345678910111213141516171819202122<ImageView android:id="@+id/imageview_normal" android:layout_width="wrap_content" ...
《Monkey Android》第11课Button和ImageButton
通过本节课可以学习到的内容: Button的用法 Button的样式 ImageButton的用法 点击事件的写法(之前已经讲过,不知还会否?) 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/opengit/MonkeyAndroid Button的用法 按钮,可以按下它,或者点击,由用户来执行一个动作或者操作。 Button的xml写法: 12345678910<Button android:id="@+id/btn_btn" android:layout_width="match_par...
《Monkey Android》第10课TextView和EditText
通过本节课可以学习到的内容: TextView的用法 EditText的用法 登陆框实例 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/git0pen/MonkeyAndroid TextView的用法 顾名思义,TextView就是文字视图,即显示文字的控件。 TextView的xml写法: 123456789101112<TextView android:id="@+id/tv_login" android:layout_width="wrap_content" android:lay...
《Monkey Android》第9课Toast土司
通过本节课可以学习到的内容: Toast显示普通文本 Toast显示图片 Toast显示图片和文字 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/git0pen/MonkeyAndroid Toast显示普通文本 简称土司,它用来在当前app的界面上弹出一个提示信息,并且会自动消失。 看下Toast到底怎么写: 12Toast.makeText(this, "我是短时间土司1号!我的显示时长是Toast.LENGTH_SHORT", Toast.LENGTH_SHORT).show();Toast.m...