cocos2dx-lua 使用 luajit 加密 Android工程

本文详细介绍了如何在 cocos2dx-lua 项目中利用 luajit 对 lua 代码进行加密,以提高性能、减小包体并防止破解。针对不同版本的 luajit,作者提供了编译 luajit.exe 和 lua51.dll 的步骤,以及在 Android Studio 工程中嵌入加密代码的方法,包括修改 msvcbuild.bat 文件以解决64位编译问题。通过这篇文章,读者可以了解到如何在当前版本的 cocos2dx 中正确整合和使用 luajit 加密。
摘要由CSDN通过智能技术生成

前言

当前版本:

cocos2dx-lua-3.17.2
LuaJIT 2.1.0-beta2
Lua 5.1

工具环境:

Visual Studio 2015
Android Studio Arctic Fox | 2020.3.1 Patch 4
Python 2.7.3

luaJit 加密 lua 代码,可以提升性能,减小包体,最重要的是防破解。
网上有很多教程,但由于时间久远,版本不同,所以并不适用。

抛开自己项目版本,盲目按照网上的教程走,结果导致事倍功半,当然这不是教程错误,而是因项目、环境、版本而异。


cocos2dx luaJit 环境

首先查看本地cocos2dx luajit 版本,我的cocos2dx版本是 3.17.2 。所以,在 cocos2d-x\external\lua\luajit 路径下可以发现 include 文件,找到 luajit.h,查看版本:

#define LUAJIT_VERSION		"LuaJIT 2.1.0-beta2"
#define LUAJIT_VERSION_NUM	20100  /* Version 2.1.0 = 02.01.00. */
#define LUAJIT_VERSION_SYM	luaJIT_version_2_1_0_beta2
#define LUAJIT_COPYRIGHT	"Copyright (C) 2005-2016 Mike Pall"
#define LUAJIT_URL		"http://luajit.org/"

我的是 2.1.0 − b e t a 2 2.1.0-beta2 2.1.0beta2,然后到官网 http://luajit.org下载 luajit
我是用 Git 下载的仓库
git clone https://luajit.org/git/luajit.git 注意切换到完全相同的版本 ⚠️

git

不同版本,最终生成的加密代码不同。各位看图就会注意到我下载了4个版本,因为之前踩坑了。开始做 cocos luacompile 加密,看到cocos提示的是 L u a J I T v 2.0.3 LuaJIT v2.0.3 LuaJITv2.0.3。结果按照这个版本加密导致解密失败。然后又尝试2.1版本,依然失败。最后仔细比对版本,找到 2.1.0 − b e t a 2 2.1.0-beta2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Valar Morgulish

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值