当前位置: 首页 > news >正文

【001】RenPy打包安卓apk 流程源码级别分析

1. 入口在下图

2. SDK版本及代码入口 (renpy-8.3.7-sdk)

由于SDK一直在升级,本文采用 标题中的版本进行分析,整体逻辑变化不太大。

实际执行逻辑是调用的rapt

2.1 点击按钮实际执行逻辑

 def AndroidIfState(state, needed, action):
    if state >= needed:
        return action
    else:
        return None

2.2  点击触发操作

class AndroidBuild(Action):
    def __init__(self, label):
        self.label = label

    def __call__(self):
        renpy.jump(self.label)
2.3 调用函数 def android_build(...)

def android_build(p=None, gui=True, bundle=False, install=False, launch=False, destination=None, opendir=False, packages=None):
    ...
2.4 执行构建过程

   rapt.build.build(
       rapt_interface,
       dist,
       p.path,
       bundle=bundle,
       install=install,
       launch=launch,
       finished=finished,
       permissions=p.dump['build']['android_permissions'],
       version=p.dump['build']['version']
   )
   2.5 构建完成后处理输出文件 

   def finished(files, destination=destination):
       # 复制文件到目标路径,并打开目录
3.   总结:

graph TD
    A[点击 Build Package 按钮] --> B{AndroidState() == ANDROID_OK?}
    B -- 是 --> C[执行 AndroidBuild("android_build")]
    C --> D[跳转到 label android_build]
    D --> E[调用 python 函数 android_build()]
    E --> F[执行构建逻辑]
    F --> G{构建成功?}
    G -- 是 --> H[复制文件到目标路径]
    G -- 否 --> I[显示错误信息]
    H --> J[打开输出目录]
   下一篇  分析 rapt中实际的执行逻辑

相关文章:

  • (面试)TCP、UDP协议
  • 手写tomcat:基本功能实现(4)
  • 轻量、优雅、高扩展的事件驱动框架——Hibiscus-Signal
  • Git 版本控制系统入门指南
  • 我的世界模组开发——特征(2)
  • 使用 Vue Tour 封装一个统一的页面引导组件
  • Typescript学习教程,从入门到精通,TypeScript 函数语法知识点及案例代码(5)
  • 六、绘制图片
  • Golang 范型
  • C# WPF .NET Core和.NET5之后引用System.Windows.Forms的解决方案
  • 数据库——SQL约束窗口函数介绍
  • 量化用到的机器学习书籍推荐
  • 广和通L610模块通过AT指令访问服务器方案:嵌赛使用
  • QT6 源(105)篇二:阅读与注释 QAction,给出源代码
  • RJ连接器的未来:它还会是网络连接的主流标准吗?
  • Java-Objects类高效应用的全面指南
  • Vue百日学习计划Day19-20天详细计划-Gemini版
  • 从数据分析到数据可视化:揭开数据背后的故事
  • ArrayList-集合使用
  • 【C语言练习】046. 编写插入排序算法
  • 解读|战国子弹库帛书漂泊海外79年今归国,追索仍将继续
  • 2025年“新时代网络文明公益广告”征集展示活动在沪启动
  • 车建兴被留置:跌落的前常州首富和红星系重整迷路
  • 《求是》杂志发表习近平总书记重要文章《锲而不舍落实中央八项规定精神,以优良党风引领社风民风》
  • 曾犯强奸罪教师出狱后办教培机构?柳州鱼峰区教育局:正核实
  • 30平米的无障碍酒吧里,我们将偏见折叠又摊开