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里 ...
随机推荐
- mysql 时间戳
需求:记录表中每条记录创建时间和最新修改时间 一.界面操作 工具:mysql-front 右键添加字段createTime和updateTime,字段类型为timestamp 完成,在表中添加一条新纪 ...
- 系统学习(javascript)_基础(数据类型之间的转换)
在js中数据类型转换一般分为两种,即强制类型转换和隐式类型转换(利用javascript弱变量类型转换). 强制转换: 利用js提供的函数parseInt(),parseFloat(),Number( ...
- 个人对java中对象锁与类锁的一些理解与实例
一 什么是对象锁 对象锁也叫方法锁,是针对一个对象实例的,它只在该对象的某个内存位置声明一个标识该对象是否拥有锁,所有它只会锁住当前的对象,而并不会对其他对象实例的锁产生任何影响,不同对象访问同一个 ...
- 【划水闲谈】Terraria 1.3.5更新
我知道这本应是一个算法博客,但又有谁规定了不能发点其他内容呢? Terraria,一个有趣的沙盒游戏.在这里,你可以建造,挖掘,开始一次又一次新的冒险. 4月19日,Re-Logic承诺的官方中文版终 ...
- 移动端测试=== adb 无线连接手机
无线连接(需要借助 USB 线) 除了可以通过 USB 连接设备与电脑来使用 adb,也可以通过无线连接——虽然连接过程中也有需要使用 USB 的步骤,但是连接成功之后你的设备就可以在一定范围内摆脱 ...
- Animate.css 前端动画开发教程
1.首先下载animate.css文件: 2.打开动画预览地址选择想要的动画,地址:https://daneden.github.io/animate.css/ ,选择好后记住动画的名字在你下载的a ...
- java IO流知识点总结
I/O类库中使用“流”这个抽象概念.Java对设备中数据的操作是通过流的方式.表示任何有能力产出数据的数据源对象,或者是有能力接受数据的接收端对象.“流”屏蔽了实际的I/O设备中处理数据的细节.IO流 ...
- T-sql语句修改数据库逻辑名、数据库名、物理名(sql2000)
--更改MSSQL数据库物理文件名Sql语句的写法 --注意:要在活动监视器里面确保没有进程连接你要改名的数据库!!!!!!!!!!!!!!!!!!!! -- Sql语句如下 USE master - ...
- 动态规划面试题基础合集1--数学三角形,LIS , LCS, CSD
动态规划的一般思路是分为四步,即:寻找最优子结构.递归定义最优子结构.自底向上求解最优子结构和构造最优解. 接下来我列举出几个常见的动态规划面试题进行说明. (1)数学三角形:比较简单,直接贴一个我看 ...
- PowerTool x64驱动模块逆向分析(持续更新)
比赛打完了,来继续搞了,因为那个主动防御正在写,所以想找找思路正好想到可以来逆向一下PT的驱动模块看看pt大大是怎么写的程序. PT x64版本的驱动模块是这个kEvP64.sys. 0x0 先来看看 ...