我做了一个android 应用 主要流程是 首先进入 Android程序的 Activity. 这个执行完后 会进入quickCocos的 Activity。这个时候就是已经进了游戏 虽然我用来做的应用。
在这里有个按钮 会执行重新进入Android 的activity 。也就通过CallsJavaStaticmethod调用Android。这个时候我想在进入Android后销毁或者弹出之前的场景。(注意Android的activity 执行后会进入quickCocos的activity所以就会有两个相同的场景在栈内)
我用的是 在调用返回的时候 执行 os.exit()。在配置好的手机上这个过程都很好,但是在稍微不好的手机上 就会整个程序都结束了。有没有其他好的办法
调用代码如下
local TryAgainBtn = cc.ui.UIPushButton.new({normal = “bt_getback2_up.png”, pressed = “bt_getback2_down.png”}) – 重拍按钮
:align(display.CENTER, 1.5*previewBg:getContentSize().width/4, previewBg:getContentSize().height/2)
:setButtonLabel(cc.ui.UILabel.new({text = “重拍”, size = 24, color = display.COLOR_BLUE}))
:addTo(previewBg)
:onButtonClicked(function()
if device.platform ~= “android” then
print(“please run this on android device”)
return
end
– call Java method
local javaClassName = "org/asmlibrary/fit/Fit"
local javaMethodName = "callCameraScene"
local javaParams = {
function(event)
if event == "success" then
--self:removeFromParent()
os.exit()
end
end
}
local javaMethodSig = "(I)V"
luaj.callStaticMethod(javaClassName, javaMethodName,javaParams,javaMethodSig)
end)