【翻译】 Processing的安卓项目构建(译者用的是Android Studio)

原文链接:https://github.com/processing/processing-android/wiki/Building-Processing-for-Android,版本Apr 2, 2023
译者声明:这个文档是开源公开的,协议是GNU协议。译者自己得使用这个文档,所以才翻译的,但是译者实在懒得翻译,所以找GPT翻译了一下。但是因为译者自己得使用这个文档,所以对这个文档进行了相当的补充说明和纠正。本着写都写了这不得发出来啊的思路,译者发布了这篇博客,希望对构建Processing安卓项目的后来者有所帮助。

文章目录

  • Processing的Android构建系统
    • 使用Gradle构建所有内容
    • [使用Android Studio开发/调试/测试核心和VR库](#使用Android Studio开发/调试/测试核心和VR库)
    • 在Eclipse中运行Android模式
      • [I - 设置Processing 4](#I - 设置Processing 4)
      • [II - 将Processing 4仓库导入到Eclipse](#II - 将Processing 4仓库导入到Eclipse)
      • [III - 将android-mode项目导入到Eclipse](#III - 将android-mode项目导入到Eclipse)
    • [从 IntelliJ 运行 Android 模式](#从 IntelliJ 运行 Android 模式)
      • [II - 将 Processing 4 仓库导入 IntelliJ](#II - 将 Processing 4 仓库导入 IntelliJ)
      • [III - 将 android-mode 项目导入 IntelliJ](#III - 将 android-mode 项目导入 IntelliJ)
    • 特殊任务
      • [为整个项目更新 Gradle 包装器:](#为整个项目更新 Gradle 包装器:)
      • [使用最新文档化的权限更新 Permissions.java](#使用最新文档化的权限更新 Permissions.java)

译者注:如果对Processing的Android毫无了解,可以先从这篇翻译中有一个简单的了解:【翻译】Processing指南|Processing安卓安装和开始使用

Processing的Android构建系统

Processing的Android构建系统完全基于Gradle(由于许多关键步骤,尤其是与依赖项解析相关的步骤,无法通过Ant轻松实现,因此移除了对Ant的支持)。构建系统包括用于开发和测试核心、VR以及其他Android特定库的Android Studio示例项目。同时还提供了用于Android模式和SDK更新工具的Eclipse项目。

译者注:译者主要就是使用AS去开发,所以关于Eclipse的描述我这边没做什么补充。译者的AS版本是2022年版的,怕最新的有bug且没教程不敢装。
译者注:译者超级不推荐直接使用Processing的PDE的Android Mode!!超级不推荐!!!它的代理完全不知道在哪里设置,而且导出死活导出不了,那个PDE玩玩草图可以,不要当成正经项目去用。
译者注:如果不知道AS在哪里下载快、以及怎么使用方便,可以看看这篇浅浅安装一下:【工具】Android|Android Studio 长颈鹿版本安装下载使用详解

使用Gradle构建所有内容

构建系统使用gradle来构建processing核心和模式、VR和AR库、SDK下载工具,并创建准备好使用的Android模式包。

译者注:如果使用的是AS,那么以下安装这些库的过程可以忽略甚至跳过。因为可以先采用AS是图形化页面把这些装全,参考下面的过程找到需要安装的组件,包括SDK、cmdtools、platform;也可以等导入了Processing-Android项目的debug文件夹之后它自动获取依赖并安装(推荐 后一种!即跳过这一步!这样就不会装错版本了)。

首先要安装Android SDK。可以手动使用此页面底部的"仅命令行工具"部分提供的命令行工具进行安装,在那里可以下载对应于您使用的操作系统(Windows、Mac或Linux)的工具。解压zip文件并将cmdline-tools文件夹中的内容移动到<SDK路径>/cmdline-tools/latest。例如(在Mac上,并替换为正确的版本号和SDK文件夹):

复制代码
unzip commandlinetools-mac-6858069_latest.zip
mkdir ~/android-devel/SDK
mkdir ~/android-devel/SDK/cmdline-tools
mv cmdline-tools ~/android-devel/SDK/cmdline-tools/latest

将命令行工具放置在SDK位置后,您可以使用sdkmanager下载SDK所需的组件:

复制代码
cd ~/android-devel/SDK/cmdline-tools/latest/bin
./sdkmanager "platform-tools" "platforms;android-33"

然后,在repo的根文件夹中创建一个local.properties文件,其内容如下:

复制代码
sdk.dir=<Android SDK的路径>

在前面的示例中,<Android SDK的路径>应该是~/android-devel/SDK/,但您可以使用任何其他您喜欢的位置。如果您使用的是Windows,使用双反斜杠"\"作为文件分隔符,或使用前斜杠"/"(Unix风格)。否则,构建过程将失败。或者,如果系统中定义了ANDROID_SDK环境变量,构建脚本将尝试自动创建此文件。

一旦有了有效的local.properties,您可以通过运行以下命令来构建Android模式分发:

复制代码
gradle dist

这假设您在系统范围内可用的Gradle版本为7(目前尚不支持版本8)(可以从此处下载二进制版本),或者您可以使用随模式附带的Gradle wrapper

复制代码
./gradlew dist

这将下载进行构建和分发过程所需的所有文件。

如果所有模块的构建过程成功完成,AndroidMode.zip和AndroidMode.txt文件将存储在dist子文件夹内。

使用以下命令清理所有构建文件:

复制代码
gradle clean

或者

复制代码
./gradlew clean

请注意,不再提供ant构建脚本来构建模式或核心库。

使用Android Studio开发/调试/测试核心和VR库

译者注:先克隆这个仓库:

git clone [email protected]:processing/processing-android.git

debug文件夹导入Android Studio,同意随后显示的Gradle Sync对话框,并等待Android Studio下载所有依赖项。

译者注:导入的方式很简单,File-Open...,然后输入刚刚克隆的仓库的debug的文件夹位置就可以。

您应该得到一个项目空间,在那里您可以运行提供的示例应用(simple和vrcube),添加新应用程序,并修改和调试核心和vr库。processing-core和processing-vr Android库项目只是指向core/src和mode/libraries/vr/src中的源文件夹,因此这些位置中源代码文件的任何更改都会影响示例应用程序。

全下好之后会得到一个这样子的页面:

进一步展开运行项,选那个simple运行一下:

译者注:然后把手机的USB调试打开,再连接电脑,点击运行就可以使用了!具体打开方式可以搜索"手机型号+USB调试",如"IQOO USB调试"。

非常方便!非常非常方便!(译者不喜欢电脑的手机模拟器,因为译者曾经因为多个手机模拟器翻车或者导致电脑蓝屏,已经心理阴影了,宁愿直接上真机)
译者注:到这里,我已经能够正常开始编程了,没有遇到其他问题了,如果还需要使用其他的环境编程你们可以继续往后看。

在Eclipse中运行Android模式

Android模式是一个Java项目,可以在Eclipse或IntelliJ等Java IDE中开发。Eclipse项目文件已包含在内,从Eclipse运行模式所需的步骤如下:

I - 设置Processing 4

由于我们只需要Processing 4作为依赖,因此执行浅克隆Processing 4仓库,并在processing/build文件夹中运行ant进行构建,具体操作请参见Processing 4的构建说明

git clone https://github.com/processing/processing4.git --depth 1

II - 将Processing 4仓库导入到Eclipse

  1. 将Processing 4仓库导入Eclipse:
    导入 > 从Git项目 > 现有本地仓库 > 选择Processing文件夹 > 导入现有Eclipse项目
  2. 选择:
    • processing-app
    • processing-core
    • processing-java(选择路径为processing/java的选项)
  3. 右键点击processing-app项目,选择 运行方式 > Java应用程序 > "Base - processing.app"

III - 将android-mode项目导入到Eclipse

  1. 使用gradle构建适用于Android的processing分发,然后将Processing for Android仓库导入到Eclipse:
    导入 > 从Git项目 > 现有本地仓库 > 选择Processing文件夹 > 导入现有Eclipse项目
  2. 选择:
    • android-mode
    • android-mode-sdkupdater
  3. 右键点击_android-mode包 > 构建路径 > 配置构建路径_
  4. 添加类路径变量ANDROID_SDK和ANDROID_JAR,并将前者设置为Android SDK的路径,后者设置为SDK中platforms/android-xx文件夹中的android.jar文件(其中xx是Android API级别)。
  5. 添加/编辑运行配置以便从开发仓库加载Android模式到processing-app:
    1. 右键点击processing-app项目,选择 运行方式...|运行配置
    2. 创建新的运行配置或编辑现有配置,确保项目为processing-app,主类为processing.app.Base。
    3. 在参数选项卡中,输入-Dusemode=processing.mode.android.AndroidMode:${resource_loc:/android-mode}作为VM参数。
  6. 每次在模式源代码(或核心或VR库)中有更改时,需要在Eclipse中运行之前重新打包模式。为此,在processing-android根文件夹中运行"gradle dist"命令,如之前所述。
  7. 从运行菜单启动processing-app。Android模式现在应该出现在模式菜单中。
  8. 为了运行包括源代码中断点的调试会话,请在运行配置对话框的源代码选项卡中添加processing和processing-android文件夹。
  9. 您可以创建一个新的构建器,每次Eclipse构建android-mode项目时都运行gradle dist。这是通过进入项目的属性,然后选择构建器选项并选择新建来完成的。在那里,您应该将工作目录设置为本地processing-android仓库的位置,浏览Location以使用gradlew命令,并添加dist作为参数。这个构建器应该在默认的Java构建器之前移动。

从 IntelliJ 运行 Android 模式

Android 模式源代码可以很容易地导入到一个新的 IntelliJ 项目中。与 Eclipse 一样,我们首先需要克隆 Processing 4 仓库。然后:

II - 将 Processing 4 仓库导入 IntelliJ

  1. 将仓库导入 IntelliJ:导入项目 > 选择 Processing 4 文件夹 > 从外部模型(Eclipse)导入
    有关更多信息,请参见 IntelliJ 在线文档中的导入带设置的项目部分。
  2. 在"选择要导入的 Eclipse 项目"窗口中,选择
    • processing-app
    • processing-core
    • processing-java
  3. 转到 运行 > 编辑配置 并创建一个新的应用程序配置。
    1. 选择 Java 应用程序。
    2. 将"主类"设置为 "Base (processing.app)"
    3. 并将"使用模块的类路径"设置为 "processing-app"

III - 将 android-mode 项目导入 IntelliJ

  1. 转到 文件 > 项目结构 > 模块 > 添加 > 导入模块 > 选择 Processing-Android 文件夹 > 从外部模型(Eclipse)导入模块 > 仅选择模式项目
  2. 将模式模块重命名为 android-mode,您可能还需要修复 IntelliJ 中的一些自动生成的模块依赖关系(如 JDK 或库),以确保没有依赖错误。
  3. 转到 文件 > 设置 > 外观和行为 > 路径变量 并设置 ANDROID_SDK 和 ANDROID_JAR 变量的值(如果不存在则创建)分别为您的 Android SDK 路径和 SDK 中 platforms/android-xx 文件夹中的 android.jar 文件(其中 xx 是 Android API 级别)。还可以创建一个名为 ANDROID_MODE(或您想要的任何名称)的新变量,并将其值设置为 <processing-android repo 路径>/mode
  4. 在 processing-android 文件夹中运行 "gradle dist" 命令以构建核心库和模式。
  5. 将运行配置的 VM 选项参数设置为 -Dusemode=processing.mode.android.AndroidMode:$VAR$。将 VAR 替换为您在第 2 步中创建的变量(例如:ANDROID_MODE)。
  6. 运行项目。Android 模式现在应该出现在模式菜单中。
  7. 可以通过检查运行配置的"启动前"部分来自动执行"gradle dist"步骤。

特殊任务

这些是仅需要偶尔运行的一些特殊任务,以更新仓库中包含的 Gradle 包装器,或由模式支持的 Android 权限。

为整个项目更新 Gradle 包装器:

运行以下命令以更新捆绑的 Gradle 包装器:

复制代码
gradle wrapper --gradle-version 6.5

(将 6.5 替换为您要更新到的 Gradle 版本)。然后,您必须将新的 Gradle 包装器文件提交到仓库。如果没有提供版本,则使用mode/versions.properties文件中的gradle-wrapper版本。

如果 Gradle 表示任务是最新的并拒绝更新,请在命令中添加 --rerun-tasks。

使用最新文档化的权限更新 Permissions.java

首先确保安装运行此目标所需的依赖项:

复制代码
pip install -r mode/scripts/requirements.txt

然后:

复制代码
gradle permissions

本账号所有文章均为原创or有版权二创,欢迎转载,请注明文章出处:https://blog.csdn.net/qq_46106285/article/details/136049420。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。

相关推荐
似霰1 小时前
安卓adb shell串口基础指令
android·adb
fatiaozhang95273 小时前
中兴云电脑W102D_晶晨S905X2_2+16G_mt7661无线_安卓9.0_线刷固件包
android·adb·电视盒子·魔百盒刷机·魔百盒固件
CYRUS_STUDIO4 小时前
Android APP 热修复原理
android·app·hotfix
鸿蒙布道师5 小时前
鸿蒙NEXT开发通知工具类(ArkTs)
android·ios·华为·harmonyos·arkts·鸿蒙系统·huawei
鸿蒙布道师5 小时前
鸿蒙NEXT开发网络相关工具类(ArkTs)
android·ios·华为·harmonyos·arkts·鸿蒙系统·huawei
大耳猫5 小时前
【解决】Android Gradle Sync 报错 Could not read workspace metadata
android·gradle·android studio
ta叫我小白5 小时前
实现 Android 图片信息获取和 EXIF 坐标解析
android·exif·经纬度
dpxiaolong7 小时前
RK3588平台用v4l工具调试USB摄像头实践(亮度,饱和度,对比度,色相等)
android·windows
tangweiguo030519878 小时前
Android 混合开发实战:统一 View 与 Compose 的浅色/深色主题方案
android
老狼孩111228 小时前
2025新版懒人精灵零基础及各板块核心系统视频教程-全分辨率免ROOT自动化开发
android·机器人·自动化·lua·脚本开发·懒人精灵·免root开发