c编译生成APK
❶ 我想知道下,c语言编写的程序是否可以直接导出APP
严格来说,C语言的编译器是不可以直接导出为APK的,但是两种方法:
1.
采用反编译,先将C程序码转成java,再导出为APK,该方法实合有一定编程功底的人。
2.
用一款软件:eclipse软件。去网络搜一下,使用教程也有,360软件宝库就有纯净版。
祝你好运!
❷ eclipse将c语言编译输出apk要怎么做
有两种方法把c语言编的程序转变成apk的安装包:
方法一:
1,简单的说就是参考C代码开发 Android 应用、在方法里用 Java语法重新实现c的每个方法,安装,对照着程序功能和反编译结果好好整理整理得到漂亮的源代码
2.编译、签名 再找个Android手机拷贝进去、反编译结果一般不怎么好看,就是一个Java函数啦,不好实现的想办法实现
3,当然不会复杂很多就是在上面第1步前加些步骤,出来啦,进了函数里你想干啥就干啥了(想干啥就干啥不包含方法的输入输出部分咯)
方法二:
使用eclipse软件,该方法为简单
❸ 如何用 纯C++开发安卓应用
纯C++,你想多的。
除非你从头开始写系统api。
没有android给你提供的api,或者别人提供的类库,你用纯C++自己实先去。
C/C++ 开发android,可以使用NDK;
Android NDK 是在SDK前面又加上了“原生”二字,即Native Development Kit,因此又被Google称为“NDK”。
众所周知,Android程序运行在Dalvik虚拟机中,NDK允许用户使用类似C / C++之类的原生代码语言执行部分程序。
NDK包括了:
从C / C++生成原生代码库所需要的工具和build files。
将一致的原生库嵌入可以在Android设备上部署的应用程序包文件(application packages files ,即.apk文件)中。
支持所有未来Android平台的一系列原生系统头文件和库
为何要用到NDK?
概括来说主要分为以下几种情况:
1. 代码的保护,由于apk的java层代码很容易被反编译,而C/C++库反汇难度较大。
2. 在NDK中调用第三方C/C++库,因为大部分的开源库都是用C/C++代码编写的。
3. 便于移植,用C/C++写的库可以方便在其他的嵌入式平台上再次使用。
2、或者使用Qt for android。使用qt提供的C++类库(加上了Qt自己的特性)开发andriod
不过建议对C/C++非常熟练才用C/C++开发。不然内存溢出呵呵。
不是浸淫C++技术的高手的话,老老实实学java或者go吧。
❹ C语言可用来写apk吗
不行,apk的基础语言是Java
❺ 怎么用C需要写apk(别扯到java了)
在PC上的程序可以轻松使用./或不用指明,默认读取的就是程序所在路径内的文件。但在Android上,应用程序被打包成apk,程序运行时无法直接获取apk(压缩包)内的文件。但在一些特殊场合,如加载图像处理训练好的分类器、模型等数据,要求每个apk到手机上都能运行,就必须解决这个问题。本文深入研究apk安装过程,给出三种方法解决这个问题。
一、android apk安装过程
Android apk文件是将AndroidManifinest.xml、应用程序代码(.dex)、资源文件和其他文件打包成的一个压缩包文件,其中的.dex文件即使android上的可执行文件,由Java代码编译后的class文件链接而成。因此可以用unzip直接将apk打开。如下图所示,将本文后面要附源码的一个apk解压后
❻ Android APK编译流程
apk 是Android Package的简写, 在平时的开发过程中,通过点击 Run app 按钮 或者 在命令行中输入
这样Android Studio就会启动构建流程,最终输出一个我们想要的APK。
直达官网介绍
对于小白来说,上面一张图已经可以解释apk的构建过程了,不过对于Andoid开发者而言还需要了解一些更详细的构建过程。
详细的对应步骤 和 使用工具如下:
资源文件(res文件夹下的文件)通过 AAPT(Android Asset Packaging Tool)打包生成R.java类(资源索引表)、.arsc资源文件 和res文件。
resources.arsc 是一个App的资源索引表,通过R.java 文件 和 resources.arsc 可以定位到资源的内存地址,resources.arsc文件的作用是通过一样的ID,根据不同的配置索引到最佳的资源显示在UI中。
AIDL (Android Interface Definition Language), 是Android接口定义语言,是Android提供的IPC (Inter Process Communication,进程间通信)的一种独特实现。
如果有aidl文件,这个阶段会生成对应的Java接口文件。
R.java文件、工程源码文件、aidl.java文件, 在这一步通过javac生成.class文件。
源码.class文件和第三方jar或者library通过dx工具打包成dex文件
Android系统的Dalvik虚拟机的可执行文件为DEX格式,所以这里会将上一步中生成的.class文件 和 引用的第三方jar等过程中的.class 一起通过dx工具打包成dex文件
apkbuilder工具会将所有没有编译的资源、.arsc资源、.dex文件打包到一个完成apk文件中
tips:
apksigner工具会对未签名的apk验证签名。得到一个签名后的apk(signed.apk)
apksigner 是google 退出的V2签名方式
Jarsigner 是之前一直使用的V1签名方式
可以通过在命令行中输入apksigner --help来获取详情信息,如果没有特殊需求,使用下面命令即可完成签名
release mode 下使用 aipalign进行align,即对签名后的apk进行对齐处理
所谓对齐,主要过程是将APK包中所有的资源文件距离文件起始偏移为4字节整数倍,这样通过内存映射访问apk文件时的速度会更快。对齐的作用主要是为了减少运行时内存的使用。
zipalign是一个android平台上整理APK文件的工具,它对apk中未压缩的数据进行4字节对齐,对齐后就可以使用mmap函数读取文件,可以像读取内存一样对普通文件进行操作。如果没有4字节对齐,就必须显式的读取,这样比较缓慢并且会耗费额外的内存。
参考文章:
Android-Studio配置构建
浅谈Android打包流程
apk打包流程
END!
❼ 如何在eclipse中把Android工程编译为apk安装文件
1、生成keystore
按照下面的命令行在C:ProgramFilesJavajdk1.6.0_10in>目录下,输入
keytool -genkey -alias android.keystore -keyalg RSA -validity100000
-keystore android.keystore
参数意义:-validity主要是证书的有效期,写100000天;空格,退格键都算密码。
命令执行后会在C:ProgramFilesJavajdk1.6.0_10in>目录下生成android.keystore文件 。如图-1

"Destination APK file "指定APK存储的位置。单击"Finish"按钮,打包完成。
进入"D:My Document",会看到生成的HelloWorld.apk以及sharpandroid证书库。
❽ C语言生成APK作用
可以用来C4droid,使用GC/克++编译器。
学习C用好,支持中国输出显示,学生使用。
如果你需要编写自己的软件和其他高级用户界面的变化,那么你需要的安卓工程师。求,如果XP系统,你可以用WIN-TC,C-免费。如果是赢-7、因为它不是与像编译老赢-TC兼容。
