键盘的起始页

为钱做事,容易累;为理想做事,能够耐风寒;为兴趣做事,则永不倦怠。

解决NDK开发中Eclipse报错“Unresolved inclusion jni.h”的最终方法

在做NDK开发过程中有时候在eclipse里会遇到其无法处理inclusion导致symbol显示错误,网上有许多方法可以解决类似“Unresolved inclusion jni.h” 错误的方法,包括include path等方法,不过对我都不管用。 最终的解决办法就是初...

2016-05-30 00:15:16

阅读数:437

评论数:0

ndk strip静态库(.a文件,android)

@echo off echo ----------------------------------------------- echo strip工具V1.0 (windows) echo author xieyuan echo ---------------------------------...

2018-11-13 11:14:10

阅读数:41

评论数:0

对象占用字节大小 以及利用指针获取对象内部成员数据

1、通过对象指针 访问其内部char* 数据 typedef struct ss{ const void* mHandle; char* mFileName; }; void tests(){ ss *ssss = (ss*)malloc(sizeof(ss)); memset(ss...

2018-11-02 15:56:10

阅读数:26

评论数:0

编译libcurl静态库(.a文件) 在android中使用(armeabi、x86、arm64-v8a、x86_64等)

首先 下载好libcurl源码项目,进入该项目根目录,创建一个文件,如android_build.sh(linux脚本),插入如下代码: #!/bin/bash LOCAL_NDK_HOME=/home/xxx/soft/android/android-sdk/android-ndk-r10...

2018-10-30 17:23:20

阅读数:119

评论数:0

ubuntu iptable、services使用指南。让iptable重启不失效!

一、iptable操作指南 1、在iptable增加 你要开放的端口: sudo iptables -A INPUT -p tcp --dport 8087 -j ACCEPT sudo iptables -A OUTPUT -p tcp --sport 8087 -j ACCEPT 其中...

2018-09-06 15:42:15

阅读数:230

评论数:0

Android自动化页面测速在美团的实践

背景 随着移动互联网的快速发展,移动应用越来越注重用户体验。美团技术团队在开发过程中也非常注重提升移动应用的整体质量,其中很重要的一项内容就是页面的加载速度。如果发生冷启动时间过长、页面渲染时间过长、网络请求过慢等现象,就会直接影响到用户的体验,所以,如何监控整个项目的加载速度就成为我们部门面临...

2018-08-28 16:32:20

阅读数:70

评论数:0

美团点评云真机平台实践

背景 随着美团点评业务越来越多,研发团队越来越庞大,对测试手机的需求显著增长。这对公司来说是一笔不小的开支,但现有测试手机资源分配不均,利用率也非常有限,导致各个团队开发、测试过程中都很难做到多机型覆盖。怎么样合理、高效利用这些测试手机资源,是摆在我们面前的一道难题。 现有的方案 为了解决这...

2018-08-28 16:26:28

阅读数:224

评论数:0

【深入阅读】关于LLVM,这些东西你必须知道!

原文出处: Alone_Monkey(@Alone_Monkey)    http://ios.jobbole.com/92875/   只要你和代码打交道,了解编译器的工作流程和原理定会让你受益无穷,无论是分析程序,还是基于它写自己的插件,甚至学习一门全新的语音。通过本文,将带你了解LLV...

2018-08-02 17:01:40

阅读数:347

评论数:0

三、llvm各种格式文件转换图、定义个pass 将指令部分  a+b 替换成 a-(-b)

  一、基础知识:llvm各种格式文件转换图 llvm主要具有以下几种格式的文件,其转换和关系图图中所示。 1) a.c,源代码。 2) a.bc,llvm的字节码的二进制形式。 3) a.ll,llvm字节码的文本形式。 4) a.s,机器汇编码表示的汇编文件。 5) a.out,...

2018-08-02 16:08:26

阅读数:100

评论数:0

二、在LLVM中编写pass的详细教程

  .../llvm/lib/Transforms 中创建一个子文件夹,例如名字叫做MyPass。然后在此文件夹下创建如下三个文件:CMakeLists.txt、MyPass.exports、MyPass.cpp CMakeLists.txt内容如下: # If we don't need...

2018-08-02 14:46:46

阅读数:118

评论数:0

APP加固技术历程及未来级别方案:虚机源码保护

传统App加固技术,前后经历了四代技术变更,保护级别每一代都有所提升,但其固有的安全缺陷和兼容性问题始终未能得到解决。而下一代加固技术—虚机源码保护,适用代码类型更广泛,App保护级别更高,兼容性更强,堪称未来级别的保护方案。 (加固技术发展历程) 第一代加固技术—动态加载 第一代And...

2018-07-31 18:04:37

阅读数:57

评论数:0

Android NDK编译选项设置全解

   在Android NDK开发中,有两个重要的文件:Android.mk和Application.mk,各尽其责,指导编译器如何编译程序,并决定编译结果是什么。本文将详细说明几个常见的NDK选项的配置,帮助大家理解相应的配置选项。     一、Application.mk        ...

2018-07-30 14:49:43

阅读数:193

评论数:0

一、手把手编译OLLVM(obfuscator-llvm),并应用到Android NDK

一、要获取最新版本的obfuscator-llvm分支,可以使用以下命令: $ git clone -b llvm-4.0 https://github.com/obfuscator-llvm/obfuscator.git $ mkdir build $ cd build $ cmake -D...

2018-07-28 17:02:53

阅读数:492

评论数:2

cmd 分支选择示例 、函数定义和用法

   本文主要讲述如下几个问题:    1.什么是函数,怎么创建函数?    2.怎么调用一个函数?    3.函数是怎么工作的?    4.怎么向函数传递参数?    5.函数怎么返回值和返回一个局部变量的值。 一、创建函数(什么是函数)     在batch script 中的...

2018-07-26 16:23:39

阅读数:291

评论数:0

CMake交叉编译

CMake的使用,以及如何将一个项目移植到Android。 CMake的用法 先让我们简单学习回顾一下cmake的基本知识: 基本流程 以linux平台为例,使用 CMake 生成 Makefile 并编译的流程如下: 编写 CMake 配置文件 CMakeLists.txt 。 ...

2018-07-25 18:13:32

阅读数:32

评论数:0

fopen 参数的意义 w wb r rb

函数fopen是一个标准c函数,其功能是打开一个文件,之后便可以进行读或写的操作.其原型是这样的:FILE *fopen( const char *filename, const char *mode );    第一个参数是要打开文件的名字(路径),第二个参数是打开文件所用的模式.对于模式参数的...

2018-07-13 13:05:00

阅读数:87

评论数:0

CVE-2017-13156 Janus 漏洞学习,Android Signature Version 详解

一、CVE-2017-13156 Janus 漏洞学习Janus漏洞“Janus”安卓漏洞(漏洞编号:CVE-2017-13156)是Google在2017年12月发布的安卓系统安全公告中披露的一个漏洞。该漏洞可以绕过安卓系统的signature scheme V1签名机制,使攻击者在不改变原来a...

2018-07-03 17:26:58

阅读数:156

评论数:0

重装系统cdboot:couldn't find ntldr

用大白菜和老毛桃装win7\win8\win10,安装之后从本地硬盘启动出现cdboot:couldn't find ntldr,试了好多次都是这 ̄,进BIOS把硬盘格式从IDE改为AHCI二,硬盘主MBR引导损坏,要用PE启动盘进行修复引导。解决方法:在PE打开分区工具Disk Genius点硬...

2018-06-22 23:43:40

阅读数:33119

评论数:0

javassist使用中遇到的问题记录

Javassit提供了运行时操作Java字节码的方法,其效率低于asm。javassist主要是提供了代码级别的修改(也有bytecode级别),相比与asm的字节码级别的修改,学习成本低,开发效率高。因此,在实际应用中javassist是一个非常不错的选择。以下是在使用javassist的过程中...

2018-06-22 14:38:16

阅读数:302

评论数:0

用 Javassist 获取方法参数名不正确解决办法

首先,如果需要在执行过程获取方法参数名,那么代码在编译的时候需要打开调集信息,也就是 -g 参数。此前,网络上普通的获取方法参数名基本代码如下:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17public static String[] getMethodPara...

2018-06-22 10:25:47

阅读数:332

评论数:0

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