打包APK并對lua文件加密

打包apk并對lua文件加密,首先要有兩個值
一個是簽名,如果文件開頭含有這個簽名,那么表示這個文件是要加密的
一個是密碼,也就是秘鑰了,根據(jù)這個秘鑰去生成加密后的文件

這兩個值都是字符串,長度都是16個字符,將其加在如下這個函數(shù)中

bool AppDelegate::applicationDidFinishLaunching()
{
    // set default FPS
    Director * director = Director::getInstance();

    director->setAnimationInterval(1.0 / 50.0f);

    // register lua module
    auto engine = LuaEngine::getInstance();
    ScriptEngineManager::getInstance()->setScriptEngine(engine);
    lua_State* L = engine->getLuaStack()->getLuaState();
    register_all_packages( L );
    LuaStack* stack = engine->getLuaStack();

//這里添加------------------
    char * key = "你的加密密碼";
    char * signature = "你的加密簽名";
    stack->setXXTEAKeyAndSign(key, strlen(key), signature, strlen(signature));

    //register custom function
    //LuaStack* stack = engine->getLuaStack();
    //register_custom_function(stack->getLuaState());

    Node *node=Node::create();
    node->onEnter();
    Director::getInstance()->setNotificationNode(node);

    //testHttp();

#if (COCOS2D_DEBUG > 0) && (CC_CODE_IDE_DEBUG_SUPPORT > 0)
    // NOTE:Please don't remove this call if you want to debug with Cocos Code IDE
    auto runtimeEngine = RuntimeEngine::getInstance();
    runtimeEngine->addRuntime(RuntimeLuaImpl::create(), kRuntimeEngineLua);
    runtimeEngine->start();
#else
    if (engine->executeScriptFile("src/main.lua"))
    {
        return false;
    }
#endif

    return true;
}

然后調(diào)用這個命令打包apk

cocos compile  -p android -m release -j 20  --lua-encrypt --lua-encrypt-key 你的加密密碼 --lua-encrypt-sign 你的加密簽名
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容