当我在 Galaxy s3 上尝试在 Titanium 中开发的 android 应用程序时,它只是打开了一秒钟,然后关闭而没有任何错误。意识到如果是“开发人员选项”下的“不保留活动”的错误,经过一些研究,我在这里找到了:https ://jira.appcelerator.org/browse/TIMOB-12939 。如果我取消选中“不保留活动”,一切正常。现在,我想通过我们检查的“不保持活动”使其工作,在上面的链接中我读到 Titanium 文档谈到了这一点,所以我最终来到这里:http ://docs.appcelerator.com/titanium/最新/#!/api/Titanium.Android.Activity。所以我改变了我的代码
if (OS_ANDROID) {
Alloy.createController('home').getView().open(); }
至
var intent = Ti.Android.createIntent({
action: Ti.Android.ACTION_MAIN,
url:'home.js'
});
intent.addCategory(Ti.Android.CATEGORY_LAUNCHER);
Ti.Android.currentActivity.startActivity(intent);
认为我可能无法使用简单的打开方式,例如(win.open())并且它崩溃了,因为该活动未在清单中声明。实际上,我没有找到一个很好的例子来说明如何使用活动和 tiapp.xml,如何添加它们?所以我在 tiapp.xml 中尝试了一些可能很愚蠢的东西,我添加了:
<activity android:name=".HomeActivity" url="home.js"/>
我得到的是:
Unable to instantiate activity ComponentInfo{it.trenta.mobile/it.trenta.mobile.HomeActivity}: java.lang.ClassNotFoundException: it.trenta.mobile.HomeActivity
那么,如何在 Titanum 中声明活动?有什么方法可以避免此复选框影响您的应用程序(除了取消选中它:))?
提前感谢您的帮助!