自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

转载 3DES Jni

具体算法原理http://baike.baidu.com/view/350958.htm具体实现3des 的输入参数需要长度24 的key 和 长度为8的iv(通常情况可以默认某个常量)unsigned char*     tripleDes(const unsigned char *src,int src_len,const u

2015-07-30 11:26:33 801

转载 OpenSSL库的RSA使用(下)-rsa函数方式

http://blog.csdn.net/fenghaibo00/article/details/172494933      RSA函数方式3.1 步骤i.             生成RSA的key,包括三部分:公钥指数、私钥指数和模数(这些需要先了解一下RSA算法的原理)ii.             将这三个数存下来,其中私钥

2015-07-30 08:42:18 787

转载 Android JNI之OpenSSL

需求:    通过C代码实现Https的Post操作。方案:    1.选择支持HTTPS的开源库OpenSSL    2.将OpenSSL编译成.a或.so,是指在工程中编译源码成链接库    3.C代码调用OpenSSL的接口步骤:1. 工具:OpenSSL源码,NDK,Cygwin2. 关键是Android.mk的设计#

2015-07-24 11:52:27 840

转载 Android NFC APDU

本文来自http://blog.csdn.net/hellogv/最近NFC支付挺火的,趁国庆宅在家,学习下Android 卡模拟(Host-based Card Emulation)。HCE的特点是模拟智能IC卡(ISO 7816-4),可用于金融和行业应用,相应地,CardReader例子中使用IsoDep。智能IC卡本身是一个微型计算机,常见为Java Card平台,特别是多

2015-07-02 16:09:35 4576

转载 TeamTalk--Android-IM架构设计

原文:http://mogu.io/android-im-designAndroid-IM架构设计作者:蘑菇小侠客 时间:June 6, 2014 分类:mogu.im###1. 架构总览###2. 模块介绍####2.1 协议封装与任务流程#####1) 协议与任务的封装 a. 协议有协议头(协议头因为格式相同,被抽象出来)和协议体

2015-04-07 18:00:36 2602

转载 Dialog向Activity传递数据

我们知道,从一个Activity向另一个Activity传递数据,用Intent实现。而当一个浮在Activity之上的Dialog需要向该Activity传递数据时,应该怎么实现呢?接着上一篇文章:用Dialog创建带箭头的对话框。        现在PopupDialog中声明一个内部接口PriorityListener,接口中声明一个回调函数refreshPriorityUI,用于在Di

2014-09-17 15:03:29 1603 1

转载 CrtmpServer支持Android与IOS进行RTMP直播遇到的_checkbw问题

原文:http://blog.csdn.net/fengyily/article/details/34422913

2014-09-03 11:57:07 886

转载 如何在ActionBar上面添加popup menu

在Android文档中,对于popup menu的讲解非常的简单,只是说了怎么创建。popup menu有个特点就是必须提供一个anchor view来让popup menu依附于它。sdk文档中有创建popup menu 的函数: public void showPopup(View v) {    PopupMenu popup = new PopupMen

2014-08-27 10:39:55 536

转载 Android_低版本使用ActionBar

简介Android3.0才开始支持ActionBar,那么怎么在低版本也能用ActionBar呢?1、使用Google提供的Support Library(android-support-v7-appcompat)。2、使用Jake Wharton编写的ActionBarSherlock(http://actionbarsherlock.com/)。以上

2014-08-27 10:20:59 584

原创 日常积累小结(一) Linux挂载windows共享目录

mount -t cifs -o username=Administrator,password=123qwe,iocharset=utf8 //192.168.15.7/public /home/liukp/win_pub注意window

2014-08-26 11:04:35 893

原创 Opaque pointer

C[edit]/* obj.h */ struct obj; /* * The compiler considers struct obj an incomplete type. Incomplete types * can be used in declarations. */ size_t obj_size(void); int obj_setid(struc

2014-07-30 17:24:24 641

原创 位操作小技巧

(1)、获取最低位的出现位置的掩码;x&(-x)(2)、判断值为2的幂:x & (x-1) == 0(3)、获取从最低的值为1的位开始到左边MSB的掩码: x | (-x)(4)、字节对齐;(x + 2^m) &( 2^m -1)

2014-07-28 14:33:05 462

转载 内存对齐算法

字节对齐是在分配内存时需要考虑的问题,两个小算法:(1)最容易想到的算法:[cpp] view plaincopyunsigned int calc_align(unsigned int n,unsigned align)  {      if ( n / align * align == n)              retu

2014-07-11 11:51:35 570

转载 Calloc Vs Malloc

http://blog.csdn.net/sylin/article/details/7664428#commentsC 语言中,经常有这样的需求:分配一块内存,并且初始化为0:很多人会写如下的代码:       char *mem = (char*) malloc (size);       if (!mem)             exit(-1);   

2014-07-10 17:00:21 636

转载 android源码地址及下载介绍

git clone https://android.googlesource.com/device/common.git git clone https://android.googlesource.com/device/google/accessory/arduino.git git clone https://android.googlesource.com/device/google

2014-07-10 16:57:31 444

转载 频繁分配释放内存导致的性能问题的分析

http://bbs.csdn.net/topics/330179712现象1 压力测试过程中,发现被测对象性能不够理想,具体表现为: 进程的系统态CPU消耗20,用户态CPU消耗10,系统idle大约70 2 用ps -o majflt,minflt -C program命令查看,发现majflt每秒增量为0,而minflt每秒增量大于10000。初步分析ma

2014-07-09 17:04:09 550

转载 jsoncpp简单示例

1、 编译jsoncpp  从(http://jsoncpp.sourceforge.net/)下载源码包“jsoncpp-src-0.5.0.tar.gz”,解压后在其解压后目录中运行$ scons platform=linux-gcc  编译出来的库文件在其libs/ linux-gcc-4.4.2目录下,有libjson_linux-gcc-4.4.2_libmt.so和libj

2014-07-07 09:37:59 504

转载 Nginx与Lua

http://huoding.com/2012/08/31/156火云邪神语录:天下武功,无坚不破,唯快不破!Nginx的看家本领就是速度,Lua的拿手好戏亦是速度,这两者的结合在速度上无疑有基因上的优势。最先将Nginx,Lua组合到一起的是OpenResty,它有一个ngx_lua模块,将Lua嵌入到了Nginx里面;随后Tengine也包含了ngx_l

2014-07-02 10:39:33 515

转载 实现一个简单的服务端推方案

http://huoding.com/2012/09/28/174客户端和服务端的交互有推和拉两种方式:如果是客户端拉的话,通常就是Polling;如果是服务端推的话,一般就是Comet,目前比较流行的Comet实现方式是Long Polling。注:如果不清楚相关名词含义,可以参考:Browser 與 Server 持續同步的作法介紹。先来看看Po

2014-07-02 10:37:24 610

转载 Http长连接200万尝试及调优

http://blog.lifeibo.com/blog/2011/07/07/200-long-connection.html

2014-07-02 10:36:16 519

转载 /etc/ld.so.conf.d/目录下文件的作用

在了解/etc/ld.so.conf.d/目录下文件的作用之前,先介绍下程序运行是加载动态库的几种方法:第一种,通过ldconfig命令    ldconfig命令的用途, 主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下, 搜索出可共享的动态链接库(格式如lib*.so*), 进而创建出动态装入程序(ld.so)所需的连接和

2014-07-01 15:10:45 667

转载 fork()调用的一个趣题--fork函数能生成几个子进程???

经常看到有人问到这样一个问题:#include #include #include  int main() { int pid=0; for(int i=0;i5;i++) { pid=fork(); if(pid==0) { printf("pid:%d\n",getpid()); } } return 0;}

2014-06-24 17:21:34 833

转载 DIOCP开源项目-高效稳定的服务端解决方案(DIOCP + 无锁队列 + ZeroMQ + QWorkers)

[概述]自从上次发布了[DIOCP开源项目-利用队列+0MQ+多进程逻辑处理,搭建稳定,高效,分布式的服务端]文章后,得到了很多朋友的支持和肯定。这加大了我的开发动力,经过几个晚上的熬夜,终于在昨天晚上,DEMO基本成型,今天再加入了QWorkers来做逻辑处理进程,进一步使得逻辑处理进程更加方便和高效。今天特意写篇blog来记录我的心得与大家分享。 [功能实现说明]沿

2014-06-24 11:51:21 1200

转载 关于如何使用pthread_cond_timedwait()超时接口

之前大家讨论说pthread_cond_timedwait()接口不能用,如果需要超时返回功能的话必须写一个定时器来实现.但是该操作太昂贵了,其实可以直接使用该接口来实现超时等待功能的,下面描述我对该接口的了解及用法,仅供参考.1.    POSIX提供了多种时钟类型,其中包括以下两种:CLOCK_REALTIME: Systemwide realtime clock. 系统范围内的实

2014-06-12 09:49:25 1030

转载 Android 调试.so库文件

http://blog.csdn.net/netpirate/article/details/5351709作者:徐建祥(netpirate@gmail.com)日期:2010/03/06网址:http://www.anymobile.org 调试步骤如下:1/ 将异常的地址信息存到文本文件,并存放在项目根目录;2/ 使用panic.py解析

2014-06-09 09:54:08 527

转载 一种高效无锁内存队列的实现

http://www.searchtb.com/2012/10/introduction_to_disruptor.htmlDisruptor是LMAX公司开源的一个高效的内存无锁队列。这两天看了一下相关的设计文档和博客,下面尝试进行一下总结。第一部分。引子谈到并发程序设计,有几个概念是避免不了的。1.锁:锁是用来做并发最简单的方式,当然其代价也是最高的。内

2014-06-09 09:33:55 3092

翻译 一个用 C++ 实现的快速无锁队列

在进程间传递数据很烦人,真心烦人。一步做错,数据就会损坏。(相较于其他读写方式)即使数据排列正确,也更易出错。一如既往的,有两种方式处理这个问题:简单的方式、麻烦的方式。简单的方式使用你使用平台提供的锁(互斥、临界区域,或等效)。这从概念上不难理解,使用上更简单。你无需担心排列问题,库或OS会替你解决。使用锁的唯一问题就是慢(这里的“慢”是相对而言的:一般应用,它的速度足够了)。T

2014-06-06 16:56:18 8854

转载 C++ 虚函数表解析

前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。  关于虚函数的使

2014-06-05 09:52:29 420

转载 虚析构函数? vptr? 指针偏移?多态数组? delete 基类指针 内存泄漏?崩溃?

http://blog.csdn.net/jnu_simba/article/details/12621955五条基本规则:1、如果基类已经插入了vptr, 则派生类将继承和重用该vptr。vptr(一般在对象内存模型的顶部)必须随着对象类型的变化而不断地改变它的指向,以保证其值和当前对象的实际类型是一致的。2、在遇到通过基类指针或引用调

2014-06-05 09:49:42 556

转载 从零开始学C++之虚函数与多态(一):虚函数表指针、虚析构函数、object slicing与虚函数、C++对象模型图

一、多态多态性是面向对象程序设计的重要特征之一。多态性是指发出同样的消息被不同类型的对象接收时有可能导致完全不同的行为。多态的实现:函数重载运算符重载模板虚函数(1)、静态绑定与动态绑定静态绑定绑定过程出现在编译阶段,在编译期就已确定要调用的函数。动态绑定绑定过程工作在程序运行时执行,在程序运行

2014-06-05 09:26:36 485

转载 浅析 Linux 中的时间编程和实现原理,第 1 部分: Linux 应用层的时间编程

本文试图完整地描述 Linux 系统中 C 语言编程中的时间问题。主要内容包括应用程序中的时间编程方法;时钟硬件简介;Glibc 时间函数的实现以及 Linux 内核对时间的支持和实现原理。这是第 1 部分,探讨应用开发中的时间编程问题。引子我们都生活在时间中,但却无法去思考它。什么是时间呢?似乎这是一个永远也不能被回答的问题。然而作为一个程序员,在工作中,总有

2014-06-05 09:25:38 472

转载 C++并发实战12:线程安全的queue

http://blog.csdn.net/liuxuejiang158blog/article/details/17301739分类: C++并发实战2013-12-13 15:16 793人阅读 评论(5) 收藏 举报C++并发实战11线程安全的queue1 首先看下STL中的queue的接口:[cpp] view plaincopy

2014-06-05 08:49:19 1544

转载 linux 性能诊断工具命令集

[sql] view plaincopyhttp://blog.csdn.net/zhongweijian/article/details/28405977#查看当前系统load  uptime    #查看系统状态和每个进程的系统资源使用状况  top    #可视化显示CPU的使用状况  htop    #查看每个CPU的负载

2014-06-04 17:43:49 564

转载 在Linux下adb连接不上android手机的终极解决方案

原文:http://blog.csdn.net/liuqz2009/article/details/79425691、做android开发的过程,碰到了Linux下adb识别不了android设备的问题,刚开始在网上google下,发现都是针对ubuntu下的一些说明:如google提供的方法:http://developer.android.com/tools/device.html,但

2014-06-04 17:36:59 620

转载 10分钟搭建 NDK 的 Android 开发环境

1. 安装JDK.   1.1 去官网http://www.oracle.com/technetwork/java/javase/downloads/index.html下载JDK7软件包,我下载的是jdk-7u51-windows-i586.exe。   1.2 双击安装jdk-7u51-windows-i586.exe,安装过程中JDK和JRE的安装目录选择默认即可。 

2014-06-04 17:36:05 463

转载 C++网游- 基础(1)

最近2周比较忙,没有抽出时间来写Blog,不过在这段时间里面把整个思路理了一遍,梳理了一下大纲,以后会多抽时间来写Blog。       好了,言归正传,做任何事情都需要一定的基础,没有坚实的地基,是不可能建立雄伟的大厦的。所以我在整个系列博文的最前面,把一些最基础的东西先整理出来,为后面的系统做铺垫。       本篇的内容,会介绍几个内容:单例,dll动态加载以及一些跨平台的处

2014-06-04 17:35:21 679

原创 CentOS下连接android手机

1.首先需要下载adb,一般在sdk中都有,centos下需要修改/etc/profile

2014-05-30 11:16:32 2555

原创 Android NDK 编译C、C++混合程序小结(1)

1.C++中如果要使用STL的东西,如string.queue等等,需要在Application

2014-05-29 09:45:15 3203

转载 解决IllegalStateException: Can not perform this action after onSaveInstanceState

今天使用Fragment的时候,出现了这个错误 IllegalStateException: Can not perform this action after onSaveInstanceState:E/AndroidRuntime(12747): Caused by: java.lang.IllegalStateException: Can not perform th

2014-04-25 09:39:49 634

转载 基于layout的下拉刷新

https://github.com/dodola/FanPullToRefresh android:id="@+id/pullDownView1" android:layout_width="fill_parent" android:layout_height="wrap_content" > and

2014-03-26 10:08:26 647

空空如也

空空如也

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

TA关注的人

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