android无后缀二进制执行文件替代apk实现程序功能

努力尽今夕,少年犹可夸。这篇文章主要讲述android无后缀二进制执行文件替代apk实现程序功能相关的知识,希望能为你提供帮助。
韩梦飞沙   韩亚飞   [email  protected]   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 = https://www.songbingjia.com/android/fopen(argv[0],"rb");     //以读取二进制的方式打开源文件
    if(fpSrc=https://www.songbingjia.com/android/=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语言拷贝文件
【android无后缀二进制执行文件替代apk实现程序功能】#include "stdio.h"


void copyFile(char *argv[]){
int c;
    FILE *fpSrc, *fpDest;   //定义两个指向文件的指针
    fpSrc = https://www.songbingjia.com/android/fopen(argv[0],"rb");     //以读取二进制的方式打开源文件
    if(fpSrc=https://www.songbingjia.com/android/=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下的一个可执行的二进制文件
什么是交叉编译,交叉编译有什么用。
 















































































    推荐阅读