自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(78)
  • 资源 (4)
  • 收藏
  • 关注

原创 VLC自定义m3u8协议片段加密方式

​ hls(m3u8)本身有一套自己的加密方式,可以保证片段是安全的。但是本身在传输的过程中加密key请求容易被截获,这样存在一点片段key被截取的风险,截取者就可以根据片段和key重新还原m3u8视频文件。 在客户端里,我们可以对EXT-X-KEY再进行一次加密,这样客户端在使用的时候,对EXT-X-KEY再次进行解密,这样,可以更近一步保证视频的安全,虽然无绝对安全,但是可以提高反解密难度。 这里我们以VLC-Android播放器举例,因为是开源,容易修改源码达...

2021-04-06 00:47:57 1470

原创 Android上增加对M3U8文件下载的功能

最近给一个客户提了一个需求,想对他们网站的视频做一个下载的功能,希望他的App能够缓存视频功能,然后用户可以在下次快速播放视频。一开始接到这个需求,自然是去搜罗一遍,有没有可靠稳定的第三方资源。(其实几年前,自己在安卓App上实现过m3u8的下载功能,只不过当时并没有想到,做成通用的,放在github上)最终在github上找到一个不错的第三方组件(https://github.com/h...

2020-03-03 00:39:06 3571

原创 又要整黑科技了,一个失误引发的故事

每天三分钟,看一篇小文章,学一个小技能故事发生在某个下午,小S半瞌睡状态坐在电脑前,这个时候,弹出一个微信消息。“这次发布的活动,好像不能在他们的小程序上搜索到,是咋回事?”, 徐姐给小S发来一个消息。半晌回过神,让小S想起来,前几天答应给徐姐发布的一个活动,这几天墨迹墨迹总算给发布了。看到徐姐发过来的消息,小S登录上网站瞅了瞅,果真是在网站上搜不到这个活动。按照惯例,思考了一...

2019-08-07 09:31:43 198

原创 写一个自己的RN Button组件 需要多少步?

每天三分钟,看一篇小文章,学一个小技能React Native的自带组件,只能说基本够用,外观上差强人意,而第三方组件却非常丰富,需要用的时候,去github上搜索也基本能得到满意的答案。然而,是程序就会有bug,相信不少人都遇到过,频繁解决三方组件问题的麻烦,这个时候,自己除了增强自己ko bug的能力,也可以稍微关注一下,自己捣鼓几个小组件的思路和能力了。回到正题,这一次,是把平时工...

2019-08-06 09:01:22 357

原创 安卓集成最新支付宝遇到的ALI38173问题

集成的最新sdk 版本应该是v15.6.0或者更高,我的是v15.6.0在介入到真机上,调用支付宝,出现ALI38173错误,搜索了一下,提示是签名错误,因为基本的调用支付代码,都是借鉴官网的demo,就没有特别注意,最后发现,在返回所有签名信息给客户端的sdk时,还是继续使用了htmlspecialchars($response)。htmlspecialchars这个函数处理的返回结...

2019-04-09 11:00:43 4398

原创 红米手机上ResolveInfo loadIcon的背景问题

Android开发:在红米机器上使用ResolveInfo获取包应用信息,并且使用loadIcon载入应用配置的Activity icon图片获取Drawable对象,获取的Drawable有时候会比原图多一个灰色背景。(部分图片有)  然而在其他机器上获取都是正常的,包括获取selector形式的Drawable。最后在用另外一种方式载入icon解决   mContext.getReso

2015-11-09 10:19:05 1438

原创 Fragment里使用CordovaWebView

因为CordovaWebView 默认的初始化里判断了Content是不是继承CordovaInterface,如果直接使用Fragment继承CordovaInterface,CordovaInterface有个抽象方法getActicity ()和Fragment的相冲突了,并且Fragment的这个同名方法还是final的,无法覆盖。查看CordovaWebView的源码,它是这

2015-04-20 16:14:44 5172 3

原创 Mac下安装React native

首先是安装node环境。brew install node*安装node如果出现某些异常,可以尝试加上sudo在git上下载,或者直接clone项目 React nativenpm install -g react-native-cli 安装命令行界面工具。在react-native的项目目录下使用react-native命令行命令init初始化一个demo项目。react-native in

2015-03-30 23:02:39 13065 3

原创 android中使用iconfont

项目缺少ui,但是又需要很多icon,为了和web的界面统一,android中,我也c

2014-05-12 09:37:12 6349

原创 导入so库使用模拟器调式问题

今天项目需要使用到了第三方的mupdf的so库,在网上down了一个1.1的so库和他的安卓源码包。开始一直模拟器调式,始终提示Trying to load lib /data/data/com.artifex.mupdfdemo/lib/...的错误信息。开始以为是so库和安卓源码不对应,在csdn上找到了一个1.3的so还是如此,后来终于在 这篇博客中找到的答案。Arcgis api fo

2013-09-27 18:08:28 1978

原创 使用安卓内置的pull解析器解析xml文档,并自动映射成bean

安卓本身内置XmlPullParser解析器,默认也是使用这个解析器进行xml文档的解析。这里自己写了一个方法来使用XmlPullParser解析器,解析xml文档,并自动转换为对应实体bean。package com.example.org.suju.pullxmldemo;import java.io.InputStream;import java.lang.reflect.

2013-06-17 00:50:55 2539 2

原创 使用sax解析xml文件,并自动根据实体类class得到映射后的实体类list集合

java中的javax.xml.parsers.SAXParser类用于解析xml文件,他是基于事件流形式解析的,其他解析xml的类和jar包还有很多,比如DOM是基于XML文档树结构的解析(代表有dom4j。sax的解析特点,决定其不是很占用太大内存,当然也有弊端,这里只是学习一下sax如何解析xml。sax解析的一般步骤://从流中解析xml文件 public List pars

2013-06-10 21:37:52 5911

原创 安卓广播机制初探

BroadcastReceiver用于监听被注册的广播事件。注册方式有两种,一种代码中注册,一种在xml中定义。 <!-- 注册一个receiver com.example.org.suju.lost.MyBroadcastReceiver类继承BroadcastReceiver --> <receiver

2013-06-09 08:38:31 2503

原创 安卓使用http下载文件

在安卓中,可以直接用java的java.net.URL包访问网络下载数据。不同的是,安卓程序需要权限,需要在AndroidManifest.xml文件中声明权限 不过有个需要注意的是,我使用的是最新的adt安卓开发集成eclipse的安装包,在使用网络服务的时候,处理网络请求的代码,不能在主线程中进行,不然安卓会提示错误。但是,有些组件设置值,他必须是在主

2013-06-05 21:32:44 30356 8

原创 简单的使用jni调用java方法

jni中调用java方法分几步。先使用FindClass方法获取指定类class,在使用GetStaticMethodID方法或者GetMethodID获取静态和非静态的方法id。在使用CallObjectMethod或者CallStaticObjectMethod方法调用静态非静态方法,对于没有返回值的方法,函数为CallStaticVoidMethod形式。jobject zoom

2013-06-04 10:20:10 29648

原创 简单的ListView使用

简单的ListView使用。使用一个ListView的Activity可以继承ListActivity,更方便的调用ListView。package com.example.org.suju.work7;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.uti

2013-06-04 09:47:03 7786

原创 ProgressBar的简单使用

ProgressBar滚动体在安卓程序中使用也计较多。ProgressBar的几个常用属性和方法android:max="200"    滚动条最大值android:progress="0" 滚动条当前值android:visibility="visible"  滚动条是否可见setProgress(int) 设置当前值<RelativeLayout x

2013-06-04 07:42:09 87030

原创 简单的RelativeLayout布局使用

记忆力随年龄减退了,干脆一些小知识点,也记录下来。<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"

2013-06-03 19:17:07 3845

原创 安卓Activity生命周期初探

首先复写Activity的7个方法,来观测这几个方法的执行顺序。 //复写生命周期方法 @Override protected void onRestart() { // TODO Auto-generated method stub System.out.println("debug-first-->onrestart"); super.on

2013-06-03 14:32:21 962

原创 Swing中JScrollPane添加JPanel设置setPreferredSize问题

panel = new JPanel(new FlowLayout(FlowLayout.LEFT));Dimension ds = new Dimension(100, 100);panel.setPreferredSize(ds);jspane.setViewportView(panel);上面的代码是在jspane的滚动视图组件中添加一个流式布局的JPanel。然后设置一个panel

2013-05-12 17:27:21 9343

原创 axis2的简单使用

axis2是apache的新一个版本SOAP引擎,不过因为axis2是基于新的体系结构编写的,使用方法和api与axis还是有很大区别。axis2下载网址 它有区分java和c版本的。最简单的使用,就是使用axis2的pojo模式,下载war版本,解压到tomcat的webapps目录(这里使用tomcat作为web容器)。启动tomcat后,默认设置下,访问http://localhos

2013-05-04 08:51:19 1189

原创 Swing组件使用-弹出式菜单

JPopupMenu组件类似于window桌面点击右键的效果,在点击处弹出一个动态菜单。代码:package org.suju.swingdemo;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.a

2013-04-20 18:09:47 2126

原创 Swing组件使用JComboBox

JComboBox是一个多功能组合下拉框,多用来显示可选择数据。这个组件是数据和显示进行分离设计,Model用于数据更改,model中的更改会同步到JComboBox中。JComboBox来进行显示。用JComboBox来显示文本数据是很简单的,有时候我们想在JComboBox中显示图文结合的,比如下拉框带图片格式,这里要用到Swing中的渲染器ListCellRenderer。

2013-04-20 13:54:30 1694

原创 使用c写python的模块和python调用系统dll

python总是和c连接最紧密,因为python本身就是用c写的。python用c进行扩展模块也很容易和高效。使用c写python的模块,首先要引入Python.h头文件,并且一些数据类型和要是用Python模块中定义的,这样才能编译成python能识别的模块。#include //导入头文件/*python中都是对象,所以用c写的方法也需要返回python可以识别的对象模块中的方法

2013-03-29 18:12:53 1035

原创 在新浪sae下部署python程序数据库配置问题 an integer is required

在新浪sae下部署python web应用和本地其实没有多大却别,也就是文件系统限制比较大。新浪sae有提供mysql数据库。在使用python配置db的时候,出现了an integer is required错误。新浪sae提供的mysql数据库有他定义好的链接信息,存在sae.const属性中,import sae.const导入模块引用属性。db = web.data

2013-03-23 10:23:33 5603

原创 python生成图片验证码

在web应用中,经常要是用到验证码,验证码可以简单就是用纯数字,或者是用字母等。开始学习用python写web应用,遇到验证码的环节,这里采用一个png图片截取的方式,其实和使用字库也差不多。用python操作图片,需要使用pil库,链接地址:pil官网pil使用说明,官网有参考资料,这里记住字符图片使用png透明底色格式,和需要生成的图片使用RGBA模式就行。code:

2013-03-13 08:31:35 6283

原创 一个简单的js分页函数

网上有很多js分页插件,一开始我也是在网上找了几款js分页插件,不过有的对ie6兼容不太好,就自己写了一个,其实也不难。这个是js根据服务器返回的总条目数进行分页的,分割大小自定义。修改为jqery插件形式方便。css外部定义使用:$(".xxxx").pages()$("#pages").pages( { "nums":10, "start":1, "display":5

2013-03-05 00:36:31 953

转载 第一辑 回家的路--鞋里的沙

鞋里的沙人们往往费尽心力去设计各种登山的线路和计划,却不肯弯腰倒掉鞋中的沙砾。           在2000年的亚洲杯足球赛上,中国队杀进四强,半决赛中同日本队相遇。赛前许多队员都表示:我们不怕日本。比赛时教练的战术安排没有什么错误,队员们拼劲也十足,但最终还是以2:3输掉了这场比赛。应当说,中国队较以往有进步,场面也不难看,但日本队明显技高一筹,尤其下半场完全控制了场上的主

2013-03-03 13:26:04 704

转载 第一辑 回家的路-- 不可群

不可群同事么都这样,要是我成天捧着书本不和他们闲聊,显得我清高、不可群,多不好啊。     前不久,一位刚从学校毕业工作一年的小表弟跟我说了上述一番话。    的确,谁都希望能够在单位中培养良好的人际关系,同大家伙打成一片,尤其是刚毕业参加工作的学生,好像不同大家融为一体就没有获得大家的认同,不能顺利地开展工作。    这种想法不能说没有道理,但绝对

2013-03-03 13:23:56 791

原创 python下连接mysql的错误 错误码 (10061)

util.db=MySQLdb.connect(user='root', passwd='5820853', db='sportdata', use_unicode='True',

2013-03-02 00:41:46 4478

转载 第一辑 回家的路--报应

报应这件事没什么太大关系,这个人也不那么重要,对付糊弄过去就行了。    五年前我还在一家营销策划公司工作,当时一位朋友找我,说他们公司想做一个小规模的市场调查。朋友说,这个市场调查很简单,他自己再找两个人就完全能做,希望我出面把业务接下来,他去运作,最后的市调报告由我把关,当然了会给我一笔费用。    这确是一笔很小的业务,没什么大的问题。市调报告出来后我也很

2013-02-28 17:54:20 599

转载 第一辑 回家的路--做事情和做事业

做事情和做事业这个公司给我的薪水是2000块,那个公司能给3000块,当然要去啦     大学毕业后的前几年中,我几乎每年换一个工作。先是在办公室当文秘,一年后觉得卖保健品挺赚钱的,就应聘去一家生物制药公司去做推销员。没干多久,保健品就臭了街,这时有位朋友拉我去家营销策划公司,月薪能开到1000元,我第二天就去报到上班。在这家营销策划公司工作了一年,收入虽然较以前多了不少,但离脱贫致富

2013-02-27 18:43:52 568

转载 第一辑 回家的路--人到中年

人到中年咱们都这岁数,奔40的人了,还追求什么呀?网络那些玩艺儿都是年轻人的事,这辈子就这样了。    每个人都有诸多的遗憾:有时间没有钱,有钱时却没有了时间;有能力时没机会,有机会时却又没有能力;年轻时用健康换金钱,老了又用钱来买健康等。但是最大的遗憾莫过于:我已不属于这个年代了,没我什么戏了!    人到中年,最容易产生这样消极的想法,认为自己这辈子已经步入

2013-02-26 12:44:25 636

转载 第一辑 回家的路--单调的心灵

单调的心灵上班下班,买菜做饭,这种机械单调的生活真没劲,一点意思都没有,过一天算一天吧。    我们绝大多数的普通人都在过着一种最普通不过的日子,没有什么“沧海横流方显英雄本色”、“事关重大”、“临危不惧”诸如此类大显身手的机会,有的就是一些按部就班的琐碎小事,在这种机械单调、数十年如一日的程序轨道中,很多人失去了激情活力,留下的只有一种疲倦懈怠。    作家叶

2013-02-25 12:41:10 503

转载 第一辑 回家的路--孝子

人穷志短有些人不顾人格尊严地去占些小便宜,还会自我解嘲说:人穷志短嘛,等我们富起来就不会这样了。    一位从日本留学回来的朋友给我说:日本人骨子里很瞧不起华人,尽管他在面子上对你很客气。这有日本人心胸狭窄的一面,也有华人自己不争气的原因。在日本东京,华人居住集中的地方秩序最混乱,最难管理,很多黑社会组织、偷抢等都有华人的份儿。他说给他刺激最深的是一次在一位华人房间里聊天,来了

2013-02-24 10:45:39 526

转载 第一辑 回家的路--孝子

孝子“等我有钱了,一定要让我爸我妈过好日子,让他们去旅游,让他们......”,许多孝顺父母的年轻人这样说。        不知你是否听过这样一句话:树欲静而风不止,子欲养而亲不待。       我们很多人都有这样的经历:父母为了把我们养大成人,供我们上学深造等等,含辛茹苦,呕心沥血,舍不得吃,舍不得穿,千方百计地保证我们的用度开支。年幼的我们曾多少次在心底暗暗发誓

2013-02-23 08:43:14 487

转载 第一辑 回家的路--完美的形象

完美的形象“上礼拜我迟到了五分钟正好碰上公司领导,他会怎么想呢?”“前天与老王吃饭时那句话说的可能不合适。”......        人有太多的时候都生活在别人的眼光中,生活在别人的价值观里。事实上,这是因为我们常常高估了自己在别人心目中的地位,努力想去扮演一个完美主义者的形象。所以,我们有的时候当众摔了一跤首先觉得不是疼痛而是感觉没有面子。其实一些小事,早就不值一提

2013-02-23 08:38:47 606

原创 使用javamail包来发送邮件

网站经常需要提供邮箱注册提示功能,javamail包提供了很多邮件发送和接受功能类,不过使用javamail,一般都要进行一些简单的配置,这里简单配置一下使用javamail发送邮件,具体看类注释说明。import java.io.InputStream;import java.util.Properties;import javax.mail.Session;import jav

2013-02-22 08:42:12 3745 1

转载 第一辑 回家的路--急功近利与厚积薄发

急功近利与厚积薄发今天我都付出这么多了,成功为什么不能在明天早晨降临呢?    在北京大学的一次讲座上,一位同学像讲演的著名律师请教问题,问他怎么样才能成为一个优秀的律师。    那位律师回答道:“咱们先别急着讨论这个问题,让我先给你讲一个故事。我上大学时有两个很好的朋友,一个毕业以后就去了律师事务所工作,而另外一个则选择继续学习深造。他们毕业的时候,才23岁。

2013-02-21 21:58:04 597

转载 第一辑 回家的路--谁是聪明人

谁是聪明人一个拥有多种“唬人”头衔的人就一定比一个普通百姓聪明吗?不见得,专业领域的知识积累未必就是聪明与智慧。    你或许会认为,一个人受过很高的教育,获得了很高的文凭,或者在某一方面成绩突出,如数学、科研、文学、从政或者经商等,他就比人家“聪明”。在这种观念的驱使下,我们会一刻不停地往自己头脑中堆积各种先进的知识,埋头于无穷无尽的知识海洋中。忽然有一天我们才发现,我们拥有

2013-02-20 17:27:56 585

汇 编 语 言

汇 编 语 言 一个介绍汇编的好书,chm,带目录,中文

2013-03-23

vpython.chm for python 3d

vpython.chm python的一个3d库开发文档

2013-03-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除