cocos2d-x アプリを開発しています。アプリは、C++ で記述されたメイン シーンから始まります。そして、メインシーンは lua で書かれたロジックシーンを作成します。メインシーンのコードは次のとおりです。
void CMainSceneLayer::menuSelectedCallBack(cocos2d::CCObject * pSender)
{
std::string scriptFile = "luaScripts/LogicScene.lua";
scriptFile = CCFileUtils::sharedFileUtils()->fullPathForFilename(scriptFile.c_str());
CCLog("scriptFile: %s\n", scriptFile.c_str());
CCLuaEngine::defaultEngine()->executeScriptFile(scriptFile.c_str());
}
次のケースでは、Android フォンでアプリを実行しています。
「LogicScene.lua」を実行すると、すべてうまくいきます。LogicシーンからMainSceneに戻るときもうまくいきます。しかし、メイン シーンが「LogicScene.lua」を再度実行しようとしても、何も起こりません。それはメインシーンに残っているだけです。LogicScene.lua からログが出力されません。
ログを出力するだけの test.lua を書いてテストしました。test.lua をメインシーンで初めて実行すると、logCat にログが表示されました。しかし、test.lua を 2 回実行しても何も起こりませんでした。
何千ものキーワードを使用してこれを何千回もグーグル検索しましたが、役立つものは何も見つかりませんでした.
そして驚くべきことに、Windows でテストするとすべてがうまくいきます。
PS、Android セットでは、すべてのスクリプトは「assets/luaScripts/」に配置され、LogicScene.lua は「assets/luaScripts/」に他のいくつかの lua スクリプトを必要とします。
Windows では、すべてのスクリプトは「Resources/luaScripts/」に配置されます。
何がうまくいかないのですか?誰でも助けることができますか?