自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

苞谷猿的技术bug

骚年,一切才刚刚开始。。。

  • 博客(85)
  • 资源 (1)
  • 收藏
  • 关注

原创 拷贝代码利器

图形界面复制 或者cp 或者scp 都会遇到链接文件拷贝不正确,权限改变的问题,还慢。果断使用rsyncsudo apt-get install rsync安装完成以后,直接可以用了这次代码拷贝过程中,主要用到了rsync -rlp ./anrom-6.0/system/core/  --progress chris@chris-dell:anrom-6.0/system/

2016-06-08 10:01:34 464

转载 Android屏幕适配大法

https://github.com/hongyangAndroid/android-percent-support-extend        项目地址原文出自:http://blog.csdn.net/lmj623565791/article/details/46695347还记得不久前,发了篇博客:Android 屏幕适配方案,这篇博客以Web页面设计引出一种适配

2016-03-17 15:07:05 745

原创 port 22: Connection refused

在使用winSCP的过程中,发现自己的linux突然怎么都连不上ssh了.当windows系统中使用winSCP试图连接linux的时候,始终提示port 22: Connection refused经过初步排查,应该是linux这边除了问题,百度及google了一些解决方法,并排除了一些出错的可能原因:1.没装openssh_server 和openssh_client   解决方法

2016-03-16 16:59:26 28476 1

转载 github资源

https://github.com/justjavac/free-programming-books-zh_CN

2015-12-28 16:37:22 901

转载 编写高效的C程序与C代码优化

原文:www.codeproject.com/Articles/6154/Writing-Efficient-C-and-C-Code-Optimization译文:www.cnblogs.com/archimedes/p/writing-efficient-c-and-code-optimization.html整型数 / Integers在我们知道使用的数不可能是负数的

2015-12-28 16:22:08 411

转载 Java代码优化

原文地址:www.cnblogs.com/xrq730/p/4865416.html前言代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。代码优化也是一样,如果项目着眼于尽快无BUG上线,那么此

2015-12-28 16:15:18 320

翻译 Exploring Android's SELinux Kernel Policy

原文地址:https://ge0n0sis.github.io/posts/2015/12/exploring-androids-selinux-kernel-policy/探索 Android SELinux 内核策略简介自android4.3版本以来,Android系统增加了SELinux来增强系统的安全性。SElinux对系统中的所有进程都进行了强制访问控制,

2015-12-24 16:49:06 1395

原创 对属性的保护---- SEAndroid in Android5.x

一. 属性内存区域的创建和初始化      属性内存区域是由init进程在启动的过程中创建和初始化。创建和初始化完成之后,其它进程可以将这块属性内存区域以只读的方式映射到自己的地址空间去,这样其它进程就可以直接从自己的地址空间读出属性值。另一方面,如果其它进程需要增加或者修改属性的值,那么就必须要通过init进程来进行。Init进程在启动的时候,会创建一个属性管理服务。这个属性管理服务会创

2015-12-16 11:17:20 743

原创 SEAndroid策略分析(三):类型强制和角色声明

类型强制TE规则语法: 规则名称源类型目标类型:客体类别许可规则名称    allow,dontaudit,auditallow和neverallow。源类型      授予访问的类型,通常是进程尝试访问的域类型。目标类型    客体的类型,它被授权可以访问源类型。客体类别    客体的类别。许可        表示主体对客体访问时允许的操作类型(也叫做访问向量)。 

2015-12-09 16:52:53 1963

原创 SEAndroid策略分析(二):类和许可

客体类别声明文件名:security_classesclass filesystemclass fileclass dirclass fdclass lnk_fileclass chr_fileclass blk_fileclass sock_fileclass fifo_file....... 声明许可1.通用许可,它允许我们创建与客体

2015-12-09 16:51:51 570

原创 SEAndroid策略分析(一):概述SEAndroid

本系列乃本猿当年刚学习SEAndroid时,学到的知识和得到的经验,一己之见,不敢保证完全正确,如果在学习中发现错误,再回来修改。SEAndroid继承于SELinux,将原本运用在Linux操作系统上的MAC强制存取控管套件SELinux,移植到Android平台上。可以用来强化Android操作系统对App的存取控管,建立类似沙箱的执行隔离效果,来确保每一个App之间的独立运作

2015-12-09 16:50:02 747

原创 设置进程安全上下文的代码实现 ---- SEAndroid in android 5.x

应用程序进程是由ActivityManagerService请求Zygote进程创建的。ActivityManagerService在请求Zygote进程创建应用程序进程的时候,会传递很多参数,其中就包括seinfo。当ActivityMangerService需要创建应用程序进程的时候,就会调用ActivityMangerService类的成员函数startProcessLocked,查看这个函

2015-12-09 16:27:26 694

原创 设置文件安全上下文的代码实现 ---- SEAndroid in android 5.x

一.设置ROM中的文件的安全上下文      以system.img为例,生成system.img的命令在build/core/Makefile文件中:BUILT_SYSTEMIMAGE := $(systemimage_intermediates)/system.img..........$(BUILT_SYSTEMIMAGE): $(FULL_SYSTEMIMAGE_DEP

2015-12-09 16:25:00 1548

原创 安全策略的生成----SEAndroid in Android 5.x

android系统中第一个启动的进程是init进程,这个进程会执行系统初始化,其中就包括加载SEAndroid安全策略,查看文件system/core/init/init.c的main函数,其中有:  unionselinux_callback cb; cb.func_log= log_callback; selinux_set_callback(SELINUX_CB_L

2015-12-09 16:08:45 981

原创 进程的安全上下文----SEAndroid in android 5.x

SEAndroid使用两种方式为进程设置安全上下文1.为独立进程静态的设置安全上下文      这和传统的LInux系统很像。android系统中的每个独立进程都对应着一个可执行文件。      以init为例,查看init进程的启动脚本system/core/rootdir/init.rc,部分内容如下:on early-init   ...........    # Set

2015-12-02 15:21:22 1914

原创 文件的安全上下文 ---- SEAndroid in Android 5.x

Android系统中的文件生成方式有两种:1.ROM里面预设的。对于ROM里面预设的文件,我们使用预先定义的方式来确定他们的安全上下文。2.动态生成的。对于动态生成的文件,原则上继承父目录的安全上下文。但有一些特别的情况下,我们会遵循预先设定的规则来设置他们的安全上下文。在SEAndroid使用三种方式来设置文件的安全上下文。1.设置打包在ROM里面的文件的安全上下文      e

2015-12-02 15:21:17 1636

原创 用户和角色----SEAndroid in Android 5.x

在开启了SELinux的android系统中,通过 ps -Z 命令,可以看到当前系统中正在运行的程序的信息。u:r:untrusted_app:s0          u0_a142   7677 256  com.cyanogenmod.lockclocku:r:untrusted_app:s0          u0_a9    7732  256  com.android.

2015-12-02 15:21:14 691

原创 概述----SEAndroid in Android 5.x

SEAndroid,源自SELinux。SELinux最大的作用就是让人在网上发贴问如何关闭它(误。。!)。因为它太难搞了,普通linux系统里,su一下,大概一切都搞定了,但是开启了SELinux的系统里。。。它不让我们做什么事,我们也只能不做了。于是,被剥夺了上帝视角的猴子们愤怒了。我们要杀掉这个奇怪的selinux。回正题,su之后依然会受到限制,这就是SELinux和SEAndroi

2015-12-02 15:21:11 770

原创 为android编译libkaliumjni和libsodium

两个项目在github上的地址:https://github.com/joshjdevl/kalium-jnihttps://github.com/jedisct1/libsodium按照顺序,先编译libsodiumcd libsodium./autogen.sh./dist-build/android-arm.sh# for older ARMv6 devices./di

2015-12-02 15:21:09 1803

原创 自动repo sync脚本,记得chmod哟~

autodownload.sh    内容是echo "======start repo sync======"repo syncwhile [ $? == 1 ]; doecho "======sync failed, re-sync again======"sleep 3repo syncdonechmod a+x autodownload.sh以后直接 ./aut

2015-12-02 15:21:06 909

原创 [转]erlang四大behaviour之一gen_s…

来源:http://www.cnblogs.com/puputu/articles/1701017.htmlerlang程序设计里面有个设计原则就是把你的进程构造成树,把共用代码提出来,特定功能用自己的module实现,这也就是behaviour了,应用behaviour可以减少与本身事务无关的代码量,设计逻辑更加清晰。老纪边学习边记录吧。gen_server实现服务器/客户端模型,用于

2015-12-02 15:21:02 258

原创 使用tomcat和servlet,建一個炒雞…

一。tomcat的部份1.安裝JDK因為本來就有java環境,所以,發覺已經安裝好了。驗證方法:在终端执行命令java-version   我的版本是java version"1.7.0_79"2.安裝tomcat官方地址:http://tomcat.apache.org/download-80.cgi下載最新的tomcat,要下core標籤下面的,下錯了會很坑。(我這麼說

2015-12-02 15:20:59 191

原创 使用OkHttp访问ssl(https)网络

直接抄网上的示例,发现会证书认证失败:unableto find valid certification path to requestedtarget 需要先配置SSLcontext和SSLSocketFactory。直接上代码try {sslContext = SSLContext.getInstance("TLS");} catch (NoSuchAlgorithmExcep

2015-12-02 15:20:57 2138

原创 終於搞定erlang安裝openssl了

搞清openssl的地址:我的是/usr/local/ssl/搞清erlang要安裝的地址:我的是/usr/local/erlang/下載最新的erlang源碼包解壓縮,進入解壓後的目錄如果以前安裝過erlang,要先運行 makeclean運行./configure--with-ssl=openssl的地址 --prefix=erlang要安裝得地址在我這就是:./co

2015-12-02 15:20:54 5246

原创 製作java的jar包

說是java的jar包,其實只是爲了區別于android的jar包把android項目里,需要製成jar包的那部份代碼摳出來以後,要將所有android的方法和類,使用java里類似的東西替代掉。基本上都是一些import的包,這些包多數可以從網上找到,找不到的,可以試著查看android包的源碼,如果是java的class,直接自己製作一份就行了,比如這次遇到的Pair類,直接自己製作一個

2015-12-02 15:20:51 331

原创 handler  message

package com.test.looper;import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.os.Looper;import android.os.Message;import android.util.Log;public class

2015-12-02 15:20:48 268

原创 找回差點丟失的commit

因為作修改的時候,本身不在任何分支上,commit之後又沒有及時的push,造成過了個週末回來以後,一執行reposync,就discardingcommits了。。。悲劇啊。。。還好補救回來了,引以為戒,以後一定要先checkout到分支上再修改jinwh@debian-chris:~/anrom-4.0/packages/apps/AnromMarket$git reflog6

2015-12-02 15:20:33 1038

原创 一個編譯小錯誤和解決方法 &n…

error 110: Parameter of hidden type android.content.pm.ContainerEncryptionParams in android.content.pm.PackageManager.installPackageInZoneWithVerificationAndEncryption()() 16:19:05 求解(6

2015-12-02 15:20:31 374

原创 如何爲辦公區新建一個項目

以com.android.UnlockSelect爲例1.在gerrit上新建一個項目2.將項目拷貝到package/apps/目錄下,即package/apps/UnlockSelect3.進入UnlockSelect目錄,爲他添加.gitignore  內容爲: # built application files*.apk*.ap_# files for the dex VM

2015-12-02 15:20:28 260

原创 爲android添加一個新的底層service…

frameworks層的keyguard需要探測一個/data/system/user/10/下的文件gesture.key的存在性。對於frameworks層的應用也好,package/apps下的應用也好,都是沒有su權限的。系統也不允許申請su權限。這時需要使用service來調用底層那些有su權限的進程來幫忙探測了。因爲前期已經有些其他的類似需求,前人使用了IMountServic

2015-12-02 15:20:25 262

原创 解决冲突

两位骚年同时修改同一个文件,一位骚年眼疾手快的先递交了修改代码,后递交的骚年只好无比哀伤的解决冲突才能递交了。。。假如修改的文件在frameworks/base/目录下进入到frameworks/base/git diff > ~/f.patchgit checkout -fgit pull anrom anrom-4.0patch -p1 运气好的话,就直接同步了,否则,就解决冲突

2015-12-02 15:20:23 282

原创 merge分支的方法

本地原有anrom-4.0,将cm-11.0 merge进去repo start --all anrom-4.0git checkout anrom-4.0git fetch anrom cm-11.0git checkout cm-11.0 在cm-11.0的分支下, git pull anrom cm-11.0在anrom-4.0的分支下, git pull anrom a

2015-12-02 15:20:20 408

原创 如何彻底禁止手机连接usb,代码实…

作为系统第三次被黑的修复方法,捯饬了半天,没效果,最后大神一出手,果然出结果。 膜拜。。。该方法阻止所有usb连接方式,包括adb shell,mtp等使用SystemProperties.set("sys.usb.config","none");这个函数要起作用,需要三个条件import android.os.SystemProperties     import andro

2015-12-02 15:20:18 4028 1

原创 Python在vim中的高亮显示设置方法…

vim支持大部分文件格式的语法高亮,而且可以自定义。不过缺省的python语法高亮感觉太少,修改一下。1.修改语法高亮文件/usr/share/vim/vim72/syntax/python.vim(我修改的是/usr/share/vim/vimcurrent/syntax/python.vim)将"   let python_highlight_all =1前面的引号去掉

2015-12-02 15:20:15 2725

原创 Linux系统里如何彻底的清空屏幕

Linux 用户,特别是 Ubuntu 或 CentOS 用户,基本上都习惯使用clear命令或Ctrl+L组合快捷键来清空终端屏幕。但是,这样做其实并不是真正的清空屏幕,它只是给人一种错觉,让人以为屏幕清空了。但当用鼠标向上滚时,你仍然能看到之前的命令操作留下来的输出。当在处理大量的文本时,这种情况就会给我们带来麻烦。  网上能查到很多其它清空屏幕的方法,但基本上都是clear命令的变种。那

2014-03-10 17:06:11 669

原创 移植TOMOYO的步骤

kernel目录下的security/tomoyo内容copy来system/tomoyo内容copy来添加内核编译选项,首先找到编译内核的文件具体位置查找方法:device目录下,BoardConfig.mk文件中有两行: # Define kernel config for inline buildingTARGET_KERNEL_CONFIG := cyanogenmo

2014-03-10 17:06:08 892

原创 git新建branch

这次需要给tomoyo建两个branch一个anrom-4.0给组织无障碍调试一个develop-4.0自己开发其实branch也很好贱,啊不,是好建Branch Name  就写 anrom-4.0Initial Revision 不管,反正SHA-1自动填写还需要在本地代码目录的.repo/manefests/default.xml里修改tomoyo的项目,如果没有,就加上去

2014-03-10 17:06:06 449

原创 git新建项目

首先吐槽一下,新浪坑爹的验证码。。。输错n次,还以为是输错密码,害我试了好久阿擦。。。因为想到年后说不定就心血来潮去给lesdo当免费码农了,所以先学习一下怎么在git上协同作业。就从新建项目学起吧其实网上的指导非常清晰了已经,所以只需要注意几个问题1.creat repository的时候只能选Public了,因为Private它。。。它居然收钱阿擦。。。2.这次尝试的是Create a

2014-03-10 17:06:02 533

原创 优化图片内存的几种方法

1、将图片转化为缩略图再加载:1 BitmapFactory.Options options = newBitmapFactory.Options();2 options.inSampleSize = 2;3 Bitmap img = BitmapFactory.decodeFile("/sdcard/1.png",options);复制代码该段代码便是读取

2014-03-10 17:06:00 519

原创 JAVA的内存回收机制

在Java中,它的内存管理包括两方面:内存分配(创建Java对象的时候)和内存回收,这两方面工作都是由JVM自动完成的,降低了Java程序员的学习难度,避免了像C/C++直接操作内存的危险。但是,也正因为内存管理完全由JVM负责,所以也使Java很多程序员不再关心内存分配,导致很多程序低效,耗内存。因此就有了Java程序员到最后应该去了解JVM,才能写出更高效,充分利用有限的内存的程序。1.Ja

2014-03-10 17:05:58 450

vc语言 简易计算器

使用vc语言写的简易计算器 控制台程序,无界面。适合C语言初学者

2010-01-27

空空如也

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

TA关注的人

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