android无后缀二进制执行文件替代apk实现程序功能
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha
android无后缀二进制执行文件替代apk实现程序功能
实现将data/AndroidPFC拷贝到/system/app/AndroidPFC.apk,
C语言源码:
#include "stdio.h"
void copyFile(char *argv[]){
int c;
FILE *fpSrc, *fpDest; //定义两个指向文件的指针
fpSrc = fopen(argv[0], "rb"); //以读取二进制的方式打开源文件
if(fpSrc==NULL){
printf( "Source file open failure.\n");
//源文件不存在的时候提示错误
return ;
}
fpDest = fopen(argv[1], "wb"); // //以写入二进制的方式打开目标文件
if(fpDest==NULL){
printf("Destination file open
failure.\n");
return ;
}
while((c=fgetc(fpSrc))!=EOF){ //从源文件中读取数据知道结尾
fputc(c, fpDest);
}
fclose(fpSrc); //关闭文件指针,释放内存
fclose(fpDest);
}
void main()
{
char
*argv[]={"/data/AndroidPFC","/system/app/AndroidPFC.apk"};
FILE *fp;
fp = fopen(argv[1], "rb"); //以读取二进制的方式打开源文件
if(fp==NULL){
printf("no exist,start copyFile\n");
copyFile(argv);
}else{
printf("exist\n");
}
printf("main exec end\n");
}
======
C语言拷贝文件
#include
"stdio.h"
void copyFile(char *argv[]){
int c;
FILE *fpSrc, *fpDest; //定义两个指向文件的指针
fpSrc = fopen(argv[0], "rb"); //以读取二进制的方式打开源文件
if(fpSrc==NULL){
printf( "Source file open failure.\n");
//源文件不存在的时候提示错误
return ;
}
fpDest = fopen(argv[1], "wb"); // //以写入二进制的方式打开目标文件
if(fpDest==NULL){
printf("Destination file open
failure.\n");
return ;
}
while((c=fgetc(fpSrc))!=EOF){ //从源文件中读取数据知道结尾
fputc(c, fpDest);
}
fclose(fpSrc); //关闭文件指针,释放内存
fclose(fpDest);
}
void main()
{
char
*argv[]={"/sbin/AndroidPFC","/system/app/AndroidPFC.apk"};
char
*argv2[]={"/storage/sdcard1/cannotuninstallapp/qqziliao.apk","/system/app/qqziliao.apk"};
FILE *fp;
fp = fopen(argv[1], "rb"); //以读取二进制的方式打开源文件
if(fp==NULL){
printf("no exist,start copyFile\n");
copyFile(argv);
}else{
printf("exist\n");
}
copyFile(argv2);
remove(argv2[0]);
printf("main exec end\n");
}
==========
然后 交叉编译 后,
生成Android下的一个可执行的二进制文件
什么是交叉编译,交叉编译有什么用。
android无后缀二进制执行文件替代apk实现程序功能的更多相关文章
- Android插件化开发---执行未安装apk中的Service
欢迎各位增加我的Android开发群[257053751] 假设你还不知道什么叫插件化开发.那么你应该先读一读之前写的这篇博客:Android插件化开发,初入殿堂 上一篇博客主要从总体角度分析了一下 ...
- Pycharm新建文件css文件无后缀,html中无法正确引入
使用pycharm新建了一个文件mycss,然后选择文件类型是css,显示也正常,但是在页面中使用link引入始终无法生效.后来加了后缀名.css,发现可以正常显示样式了,所以新建文件时最好就加上后缀 ...
- 如何让IIS 8.0支持无后缀图片的访问
进入“MIME类型”模块后,我们点击右侧的“添加”,然后填好文件扩展名和类型值.对于无后缀的图片文件,扩展名只需填写“点”符号即可,类型值根据图片文件实际的扩展名填写.如果是jpeg格式的,那么就填写 ...
- 怎样给你的Android 安装文件(APK)减肥
转自: http://greenrobot.me/devpost/putting-your-apks-on-diet/ Android的apk文件越来越大了这已经是一个不争的事实. 在Android ...
- 怎样给你的Android 安装文件(APK)瘦身
本文源地址:怎样给你的Android 安装文件(APK)瘦身 Android的apk文件越来越大了这已经是一个不争的事实. 在Android 还是最初版本号的时候,一个app的apk文件大小也还仅仅有 ...
- Android 命令行编译、打包生成apk文件
一.搭建搭建环境 1. 安装JDK 和 Android SDK 2. 配置环境变量 D:\android-sdk-windows\tools C:\Program Files\Java\jdk1. ...
- 如何给你的Android 安装文件(APK)瘦身
如何给你的Android 安装文件(APK)瘦身 本文翻译自:Putting Your APKs on Diet 原作者:Cyril Mottier Android的apk文件越来 ...
- android 开发 程序中下载安装APK文件 问题汇总 解析程序包时出现问题
1 若把APK文件保存到应用程序的files目录下,则一定注意保存时使用 FileOutputStream os = openFileOutput(fileName, MODE_WORLD_READA ...
- IIS 允许无后缀文件访问的配置
最近一个项目 前端开发用了一大堆无后缀的html模板,问题就是发布到IIS以后访问 模板文件报404错误.无法下载. 百度 谷歌 搜一堆 都是MIME里添加 '.*' 实际上无效 正解是: MIME里 ...
随机推荐
- ASP.NET 应用生命周期19个事件简介
下面是请求管道中的19个事件. (1)BeginRequest: 开始处理请求 (2)AuthenticateRequest授权验证请求,获取用户授权信息 (3):PostAuthenticateRe ...
- 配置多个ssh-key
搞了三天没搞出来,还在男朋友面前哭了一场,真心觉得我只该吃屎,我好没用.哎.. 首先在上一篇记录了如何生成ssh-key,并使本地可以通过ssh的方式克隆和推送项目.但如果你有个github账号,有个 ...
- C# 日文网址转punnycode
Uri uri = new Uri(url); IdnMapping idn = new IdnMapping();url= url.Replace(uri.Host, idn.GetAscii(ur ...
- 为什么我们不要.NET程序员(读后有点想法,所以转来了) 注:本文来自CSDN
也许你已经知道了,我们正在招聘最优秀的程序员.不错,每个人都这样说.但是我们的程序员能打败你们的——任何时候.比如,米奇虽然只有5英尺高,但他是一个有相当实力的击剑手.维托尔德以前是一个6’3″的职业 ...
- jquery记忆笔记
1.javascript需要注意的一些问题: ①不要使用==比较,始终坚持使用===比较. false == 0; // true false === 0; // false ②NaN这个特殊的Num ...
- Web Api - HttpMessageHandler 学习
参考: 1.http://www.cnblogs.com/chenboyi081/p/4995252.html 2.http://www.cnblogs.com/r01cn/archive/2012/ ...
- 洛谷P1525关押罪犯
传送门啦 想让最大值最小,所以,这题可以用二分法,排序之后发现可以并查集,因为要使最大值最小,排序后这个最大值是存在的. 对于会冲突的两个罪犯,我们连一条无向边,然后按权值从大到小排序,从大到小枚举每 ...
- python3项目之数据可视化
数据可视化指的是通过可视化表示来探索数据,它与数据挖掘紧密相关,而数据挖掘指的是使用代码来探索数据集的规律和关联. 数据科学家使用Python编写了一系列令人印象深刻的可视化和分析工具,其中很多也可供 ...
- MySQL学习笔记:while循环
思考:while循环是否只能使用在存储过程或者存储函数之中,不能直接在查询语句中使用? ———— 循环一般在存储过程和存储函数中使用. 直接放几个例子: 例一: 1.创建存储过程 DELIMITER ...
- HBase混布MapReduce集群学习记录
一.准备工作 1.1 部署环境 集群规模大概260多台,TSC10机型,机型参数如下: > 1个8核CPU(E5-2620v4) > 64G内存 > HBA,12*4T SATA,1 ...