当前位置:  编程技术>综合
本页文章导读:
    ▪android4.0浏览器在eclipse编译的方法      注意: 如果下载已经修过的源码,只要进行3、4、8步骤就应该可以了。 eclipse版本:adt-bundle-windows (Android Developer Tools Build: v21.0.0-519525) 1.从android4.0系统的代码中拷贝一份浏览器的代码,到本.........
    ▪undefined reference to `environ'      d:/linux/linuxkernel/WORKING_DIRECTORY/android-omap-20111108-gingerbread/libcore/luni/src/main/native/java_lang_ProcessManager.cpp:259: undefined reference to `environ' `environ' is defined in d:\linux\linuxkernel\WORKING_DIRECTORY\android-omap-2011110.........
    ▪Redis系列-存储篇set主要操作函数小结              最近,总是以“太忙“为借口,很久没有blog了,凡事贵在恒,希望我能够坚持不懈,毕竟在blog的时候,也能提升自己。废话不说了,直奔主题”set“ redis set 是string类型.........

[1]android4.0浏览器在eclipse编译的方法
    来源: 互联网  发布时间: 2013-11-10
注意:
如果下载已经修过的源码,只要进行3、4、8步骤就应该可以了。
eclipse版本:adt-bundle-windows (Android Developer Tools Build: v21.0.0-519525)

1.从android4.0系统的代码中拷贝一份浏览器的代码,到本地文件夹,并重命名为BrowserEclipse:
<android4.0源码>/package/apps/Browser  -->  <本地目录>/BrowserEclipse
  

2.在eclipse中导入工程BrowserEclipse。
菜单File-import,选择Android-Existing Android Code Into Workspace。
浏览文件夹,并选择工程的根目录:<本地目录>/BrowserEclipse。
去掉tests工程的勾选按钮,暂时不管tests工程。
重命名工程:选择工程,鼠标右键菜单-Refactor-Rename,输入BrowserEclipse。
此时,工程中会有很多错误,暂时不用理睬。


3.添加库文件。
从编译通过的android4.0源码的out目录中拷贝相应的文件到BrowserEclipse的systemlib路径下,文件如下:
BrowserEclipse\systemlib\out\target\common\obj\JAVA_LIBRARIES\android-common_intermediates\classes.jar
BrowserEclipse\systemlib\out\target\common\obj\JAVA_LIBRARIES\android-support-v13_intermediates\classes.jar
BrowserEclipse\systemlib\out\target\common\obj\JAVA_LIBRARIES\android-support-v4_intermediates\classes.jar
BrowserEclipse\systemlib\out\target\common\obj\JAVA_LIBRARIES\core_intermediates\classes.jar
BrowserEclipse\systemlib\out\target\common\obj\JAVA_LIBRARIES\framework_intermediates\classes.jar


在eclispe中刷新下工程,再选择工程,鼠标右键菜单-Build Path-Configure Build Path,
在Libraries页面中,选择Add Library-User Libraries-New,输入库名称systemlib,并勾选输入框下面的“System Library”。


回到User Libraries窗口,选择新建立的systemlib,点击按钮“Add JARs”,把systemlib\文件夹下面的五个classes.jar都添加进去。


一路OK按钮,回到Java Build Path界面,选择Order and Export页面,选择新建立systemlib,点击Top按钮,顶到第一位,OK。


4.设置Java Compiler版本为1.6。
再选择工程,鼠标右键菜单-Properties-Java Compiler,选择1.6


5.屏蔽一些代码。
经过第3步骤,回到eclipse编辑界面,刷新工程,此时大部分的错误已经解决,仅剩少数几个错误,把这些错误地方屏蔽掉,即可:
屏蔽EventLogTags相关的行:
BrowserEclipse\src\com\android\browser\LogTag.java;
屏蔽VisibleForTesting相关的行:
BrowserEclipse\src\com\android\browser\BrowserActivity.java
BrowserEclipse\src\com\android\browser\provider\BrowserProvider2.java
BrowserEclipse\src\com\android\browser\autocomplete\SuggestedTextController.java
此时,应该没有编译错误了。


6.增加一个java文件,避免运行时错误:
BrowserEclipse\src\com\android\common\content\SyncStateContentProviderHelper.java
来自android4.0源码:
frameworks\ex\common\java\com\android\common\content\SyncStateContentProviderHelper.java


7.修改BrowserEclipse\AndroidManifest.xml,增加<uses-sdk android:minSdkVersion="14"/>
修改BrowserEclipse\project.properties中的target属性值,设置为target=android-14


8.卸载系统应用Broser.apk,安装BrowserEclipse.apk。
这里需要先把机器root,才能进行,这个apk只能在android4.0的系统中运行正常,在4.1中不能运行。
先备份/system/app/Browser.apk和Browser.odex,拷贝到/sdcard即可。
删除/system/app/Browser.apk和Browser.odex,重启机器。
安装BrowserEclipse.apk,查看效果。
作者:victoryckl 发表于2013-1-13 13:34:06 原文链接
阅读:9 评论:0 查看评论

    
[2]undefined reference to `environ'
    来源: 互联网  发布时间: 2013-11-10
d:/linux/linuxkernel/WORKING_DIRECTORY/android-omap-20111108-gingerbread/libcore/luni/src/main/native/java_lang_ProcessManager.cpp:259: undefined reference to `environ'
`environ' is defined in d:\linux\linuxkernel\WORKING_DIRECTORY\android-omap-20111108-gingerbread\bionic\libc\bionic\libc_init_common.c:
char **environ;
but due to some reason, it's not working. I conduct a test for this. if I change environ to environ1, it's working, but not for environ. It's also different in the object file(.o) when I change the name of environ. So change the definition in java_lang_ProcessManager.cpp:
//extern char **environ;
 char **environ;
http://msdn.microsoft.com/en-us/library/stxk41x1(v=VS.71).aspx
http://msdn.microsoft.com/zh-cn/vstudio/stxk41x1
作者:llrraa2010 发表于2013-1-13 13:22:51 原文链接
阅读:25 评论:0 查看评论

    
[3]Redis系列-存储篇set主要操作函数小结
    来源: 互联网  发布时间: 2013-11-10
        最近,总是以“太忙“为借口,很久没有blog了,凡事贵在恒,希望我能够坚持不懈,毕竟在blog的时候,也能提升自己。废话不说了,直奔主题”set“

redis set 是string类型对象的无序集合,set不管存储多少对象,对存储对象的add,remove和test操作的时间复杂度是O(1)。set最多能包含 232 - 1 个member。

1、增加

语法:sadd key member[member...]

        解释:对特定key的set增加一个或多个值,返回是增加元素的个数。注意:对同一个member多次add,set中只会保留一份。

[root@xsf001 ~]# redis-cli 
redis 127.0.0.1:6379> sadd stu zhangsan lisi wangwu #新增
(integer) 3
redis 127.0.0.1:6379> smembers stu    #得到set的所有member
1) "wangwu"
2) "lisi"
3) "zhangsan"
redis 127.0.0.1:6379> sadd stu zhangsan #增加存在的member
(integer) 0
redis 127.0.0.1:6379> smembers stu
1) "wangwu"
2) "lisi"
3) "zhangsan"
redis 127.0.0.1:6379> sadd tech wangwu liming joe
(integer) 3
redis 127.0.0.1:6379> sadd tech jim
(integer) 1
redis 127.0.0.1:6379> smembers tech
1) "jim"
2) "liming"
3) "wangwu"
4) "joe"

  2、查询

a)smembers

语法:smembers key

解释:获取set中的所有member

redis 127.0.0.1:6379> smembers stu
1) "wangwu"
2) "lisi"
3) "zhangsan"
redis 127.0.0.1:6379> smembers tech
1) "jim"
2) "liming"
3) "wangwu"
4) "joe"

b)sismember

语法:sismember key member

解释:判断值是否是set的member。如果值是set的member返回1,否则,返回0

redis 127.0.0.1:6379> sismember tech jim #jim 是set的member
(integer) 1
redis 127.0.0.1:6379> sismember tech jim001 #jim001 不是set的member
(integer) 0
c)scard

语法:scard key

解释:返回set的member个数,如果set不存在,返回0

redis 127.0.0.1:6379> scard tech  # tech 存在
(integer) 4
redis 127.0.0.1:6379> scard stud #stud 不存在
(integer) 0
redis 127.0.0.1:6379> scard stu
(integer) 4
d)srandmember

语法:srandmember key

解释:从set中返回一个随机member

redis 127.0.0.1:6379> srandmember stu
"zhangsan"
redis 127.0.0.1:6379> srandmember stu
"zhangsan"
redis 127.0.0.1:6379> srandmember stu
"wangwu"
redis 127.0.0.1:6379> srandmember stu
"zhangsan01"

3、删除

a)spop

语法:spop key

解释:移除并返回一个随机member

redis 127.0.0.1:6379> smembers stu #pop前
1) "zhangsan01"
2) "wangwu"
3) "lisi"
4) "zhangsan"
redis 127.0.0.1:6379> spop stu  #移除一个随机member
"lisi"
redis 127.0.0.1:6379> smembers stu #pop后
1) "zhangsan01"	
2) "wangwu"
3) "zhangsan"
b)srem

语法:srem key member [member ...]

解释:移除一个或多个member

redis 127.0.0.1:6379> smembers tech
1) "jim"
2) "liming"
3) "wangwu"
4) "joe"
redis 127.0.0.1:6379> srem tech jim   #移除jim
(integer) 1
redis 127.0.0.1:6379> smembers tech   
1) "liming"
2) "wangwu"
3) "joe"
redis 127.0.0.1:6379> srem tech liming joe #移除多个member
(integer) 2
redis 127.0.0.1:6379> smembers tech
1) "wangwu"
c)smove

语法:smove source destination member

解释:将source中的member移动到destination

redis 127.0.0.1:6379> smembers tech   #smove前
1) "wangwu"
redis 127.0.0.1:6379> smembers stu
1) "zhangsan01"
2) "wangwu"
3) "zhangsan"
redis 127.0.0.1:6379> smove stu tech zhangsan  #将zhangsan 从stu移动到tech
(integer) 1
redis 127.0.0.1:6379> smembers stu #smove后
1) "zhangsan01"
2) "wangwu"
redis 127.0.0.1:6379> smembers tech
1) "wangwu"
2) "zhangsan"


4、其他

a)并集

语法:sunion key[key...]

解释:多个set的并集

redis 127.0.0.1:6379> smembers stu
1) "zhangsan01"
2) "wangwu"
redis 127.0.0.1:6379> sunion stu
1) "zhangsan01"
2) "wangwu"
redis 127.0.0.1:6379> smembers tech
1) "wangwu"
2) "zhangsan"
redis 127.0.0.1:6379> sunion stu tech
1) "zhangsan01"
2) "wangwu"
3) "zhangsan"

b)把并集结果存储到set

语法:sunionstore destination key [key ...]

解释:求多个set并集,并把结果存储到destination 

redis 127.0.0.1:6379> sunionstore same stu tech #把stu tech并集结果存储在union
(integer) 3
redis 127.0.0.1:6379> smembers union
1) "zhangsan01"
2) "wangwu"
3) "zhangsan"

 c)交集

语法:sinter key[key...]

解释:多个set的交集

redis 127.0.0.1:6379> smembers stu
1) "zhangsan01"
2) "wangwu"
redis 127.0.0.1:6379> smembers tech
1) "wangwu"
2) "zhangsan"
redis 127.0.0.1:6379> sinter stu tech
1) "wangwu"

d)把交集结果存储到指定set

语法:sinterstore destination key [key ...]

解释:把多个set的交集结果存储到destination 

redis 127.0.0.1:6379> sinterstore inter stu tech
(integer) 1
redis 127.0.0.1:6379> smembers inter
1) "wangwu"

      e) set中在其他set中不存在member

语法:sdiff key[key ...]

redis 127.0.0.1:6379> 
redis 127.0.0.1:6379> smembers stu
1) "zhangsan01"
2) "wangwu"
redis 127.0.0.1:6379> smembers tech
1) "wangwu"
2) "zhangsan"
redis 127.0.0.1:6379> sdiff stu tech
1) "zhangsan01"
redis 127.0.0.1:6379> sdiff tech stu
1) "zhangsan"

f)把set中在其他set中不存在的member存储到新的set

语法:sdiffstore key[key...]

redis 127.0.0.1:6379> sdiffstore diff stu tech
(integer) 1
redis 127.0.0.1:6379> smembers diff
1) "zhangsan01"



    
最新技术文章:
▪error while loading shared libraries的解決方法    ▪版本控制的极佳实践    ▪安装多个jdk,多个tomcat版本的冲突问题
▪简单选择排序算法    ▪国外 Android资源大集合 和个人学习android收藏    ▪.NET MVC 给loading数据加 ajax 等待loading效果
▪http代理工作原理(3)    ▪关注细节-TWaver Android    ▪Spring怎样把Bean实例暴露出来?
▪java写入excel2007的操作    ▪http代理工作原理(1)    ▪浅谈三层架构
▪http代理工作原理(2)    ▪解析三层架构……如何分层?    ▪linux PS命令
▪secureMRT Linux命令汉字出现乱码    ▪把C++类成员方法直接作为线程回调函数    ▪weak-and算法原理演示(wand)
▪53个要点提高PHP编程效率    ▪linux僵尸进程    ▪java 序列化到mysql数据库中
▪利用ndk编译ffmpeg    ▪活用CSS巧妙解决超长文本内容显示问题    ▪通过DBMS_RANDOM得到随机
▪CodeSmith 使用教程(8): CodeTemplate对象    ▪android4.0 进程回收机制    ▪仿天猫首页-产品分类
▪从Samples中入门IOS开发(四)------ 基于socket的...    ▪工作趣事 之 重装服务器后的网站不能正常访...    ▪java序列化学习笔记
▪Office 2010下VBA Addressof的应用    ▪一起来学ASP.NET Ajax(二)之初识ASP.NET Ajax    ▪更改CentOS yum 源为163的源
▪ORACLE 常用表达式    ▪记录一下,AS3反射功能的实现方法    ▪u盘文件系统问题
编程技术其它 iis7站长之家
▪Perl 正则表达式 记忆方法    ▪.NET MVC 给loading数据加 ajax 等待laoding效果    ▪java 类之访问权限
▪extjs在myeclipse提示    ▪xml不提示问题    ▪Android应用程序运行的性能设计
▪sharepoint 2010 自定义列表启用版本记录控制 如...    ▪解决UIScrollView截获touch事件的一个极其简单有...    ▪Chain of Responsibility -- 责任链模式
▪运行skyeye缺少libbfd-2.18.50.0.2.20071001.so问题    ▪sharepoint 2010 使用sharepoint脚本STSNavigate方法实...    ▪让javascript显原型!
▪kohana基本安装配置    ▪MVVM开发模式实例解析    ▪sharepoint 2010 设置pdf文件在浏览器中访问
▪spring+hibernate+事务    ▪MyEclipse中文乱码,编码格式设置,文件编码格...    ▪struts+spring+hibernate用jquery实现数据分页异步加...
▪windows平台c++开发"麻烦"总结    ▪Android Wifi几点    ▪Myeclipse中JDBC连接池的配置
▪优化后的冒泡排序算法    ▪elasticsearch RESTful搜索引擎-(java jest 使用[入门])...    ▪MyEclipse下安装SVN插件SubEclipse的方法
▪100个windows平台C++开发错误之七编程    ▪串口转以太网模块WIZ140SR/WIZ145SR 数据手册(版...    ▪初识XML(三)Schema
▪Deep Copy VS Shallow Copy    ▪iphone游戏开发之cocos2d (七) 自定义精灵类,实...    ▪100个windows平台C++开发错误之八编程
▪C++程序的内存布局    ▪将不确定变为确定系列~Linq的批量操作靠的住...    ▪DIV始终保持在浏览器中央,兼容各浏览器版本
▪Activity生命周期管理之三——Stopping或者Restarti...    ▪《C语言参悟之旅》-读书笔记(八)    ▪C++函数参数小结
▪android Content Provider详解九    ▪简单的图片无缝滚动效果    ▪required artifact is missing.
▪c++编程风格----读书笔记(1)    ▪codeforces round 160    ▪【Visual C++】游戏开发笔记四十 浅墨DirectX教程...
▪【D3D11游戏编程】学习笔记十八:模板缓冲区...    ▪codeforces 70D 动态凸包    ▪c++编程风格----读书笔记(2)
▪Android窗口管理服务WindowManagerService计算Activity...    ▪keytool 错误: java.io.FileNotFoundException: MyAndroidKey....    ▪《HTTP权威指南》读书笔记---缓存
▪markdown    ▪[设计模式]总结    ▪网站用户行为分析在用户市场领域的应用
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3