• android 重用 c代码


    引用:http://www.ibm.com/developerworks/cn/opensource/tutorials/os-androidndk/section6.html

    自定义 Eclipse

    使用 Eclipse IDE 的好处之一是很少需要编译。每次在 Eclipse IDE 中保存文件时,就会自动构建项目。这非常适用于 Android SDK(即 Java)文件和 Android XML 文件,但是对于 NDK 构建的库来说怎么样呢?我们来了解一下。

    扩展 Eclipse 环境

    如前所述,构建本地库和运行 ndk-build 命令一样简单。但是,除了简单的练习外,当处理其他任何项目时,像下面这样做会很麻烦,即跳出终端或命令窗口并执行 ndk-build 命令,返回到 Eclipse 环境,然后通过“单击”一个项目文件执行刷新,这会强制重新编译和重新打包完成的应用程序。解决方案是根据您的 Android 项目自定义构建设置以扩展 Eclipse 环境。

    要修改构建设置,首先查看 Android 项目的属性并选择列表中的 Builders。添加一个新 Builder 并将其移动到列表顶部,如图 8 所示。


    图 8. 修改构建设置
    屏幕截图显示了在 Eclipse 中编辑 IBM Photo Phun 属性的 Builders 页面 

    每个生成器都有 4 个配置选项卡。为您的生成器命名,比如将其命名为 Build NDK Library,然后填充选项卡。第一个选项卡("Main")指定可执行工具的位置和工作目录。浏览到您 jni 文件夹中的 ndk-build 文件和工作目录,如图 9 所示。


    图 9. 设置 NDK 的 Builder 属性
    屏幕截图显示了 Main 选项卡,详细说明了 Eclipse 中 NDK 条目的编辑 

    您只想使用 ndk-build 而不是 Eclipse 工作空间的其他内容操作此项目,因此设置 Refresh 选项卡,如图 10 所示。


    图 10. 设置 Refresh 选项卡
    屏幕截图显示了 Refresh 选项卡,详细说明了 Eclipse 中 NDK 条目的编辑 

    只有在修改 Android.mk 文件或 ibmphotophun.c 文件时,才会想要重新构建库。为此,在 Build Options 选项卡中 Specify Resources 按钮的下方选择 jni 文件夹。此外,通过核对适当的时间指定何时想要构建工具,如图 11 所示。


    图 11. 设置 build options
    屏幕截图显示了 Build Options 选项卡,详细说明了 Eclipse 中 NDK 条目的编辑 

    单击 OK 确认设置后,确保此 NDK 构建工具设置为列表中的第一个条目,方法是选择 Up 按钮,直到其位于 Builders 列表的顶部,如图 7 所示。

    要测试是否正确设置了您的 Builder,打开 Eclipse 中的 ibmphotophun.c 源文件,方法是右键单击源文件,然后使用 Text Editor 打开它。进行简单的更改,然后保存文件。您应在控制台窗口中看到 NDK 工具链输出,如图 12 所示。如果您的 C 代码有错误,则它们显示为红色。


    图 12. NDK 输出在 Eclipse IDE 的控制台中显示
    屏幕截图显示了在执行 gdb-setup 时 Eclipse 输出控制台的一个示例 

    将 NDK 结合到您的构建流程中,您可以侧重于编写代码而不用了解构建环境太多。需要对应用逻辑进行更改?没问题,修改 Java 代码并保存文件。需要调整图像处理算法?不用担心,只需修改 C 例程并保存文件即可。Eclipse 和 ADT 插件会完成其他操作。

  • 相关阅读:
    【转载】 opencv, PIL.Image的彩色图片维度 && caffe和pytorch的矩阵维度
    【转载】 Caffe BN+Scale层和Pytorch BN层的对比
    【转载】 Pytorch中的学习率调整lr_scheduler,ReduceLROnPlateau
    【转载】 Pytorch(0)降低学习率torch.optim.lr_scheduler.ReduceLROnPlateau类
    【转载】 PyTorch学习之六个学习率调整策略
    【转载】 Pytorch(1) pytorch中的BN层的注意事项
    【转载】 【caffe转向pytorch】caffe的BN层+scale层=pytorch的BN层
    硬件设计之串口收发器---ISO1050 (现行) 隔离式 5V CAN 收发器
    外盘和内盘
    工业级别sd卡存贮slc mlc tlc
  • 原文地址:https://www.cnblogs.com/sode/p/2596885.html
Copyright © 2020-2023  润新知