【发布时间】:2020-01-26 23:54:55
【问题描述】:
我有一个 Nativescript Vue 应用程序将不再在发布模式下运行。
我最近将应用程序从 5.3.0 迁移到 6.1.1,一切似乎都很好。我做了一些更新,包括添加nativescript-admob 和nativescript-purchase 以及相应的功能。同样,在 ios 和 android 中调试应用程序时一切正常。
我还能够成功地为 android 构建 --release 模式并使用 iOS 存档。但是,当我运行在 android 上生成的应用程序时,它会在启动时立即崩溃。
这是一个包含我的 package.json 的要点,其中更改了应用程序 ID 等:https://gist.github.com/wpatter6/3575e029572eaedb03e723d5fba19e10
这是一个包含每次应用尝试启动时抛出的 logcat 堆栈跟踪的要点: https://gist.github.com/wpatter6/3ec8def984e5e0ef532653c149020804
这是我正在运行构建的脚本:
rm -rf platforms/android
rm -rf node_modules
npm i
tns build android --env.snapshot --env.sourceMap --bundle --clean --release --key-store-*
我不知道如何继续进行故障排除或此堆栈跟踪可能指向什么。
如果有人对如何从日志中获取更多信息或可能存在什么问题有任何建议,我将不胜感激。提前致谢!
编辑:
我尝试使用--env.snapshot 标志构建它,现在抛出一个错误,上面写着The file ./app.css couldn't be loaded! You may need to register it inside ./app/vendor.ts。这个项目使用了scss,也许那里有问题?奇怪的是这只是发布模式下的问题,样式在调试中效果很好......
【问题讨论】:
-
您是否使用安卓设备监视器查看日志?如果不能,您可以使用它并尝试显示整个崩溃日志。您附加的似乎是调试日志,不包含有关错误/异常的任何详细信息。
-
我发布的日志是使用在模拟设备上运行的 Android Studio 中的 logcat 查看器捕获的。我不熟悉 Android 设备监视器,但谷歌文档说它已被弃用(developer.android.com/studio/profile/monitor)。您能否提供有关该工具的更多信息,以便从 @Manoj 的日志中获取更多信息?
-
@Manoj 这是更新后的堆栈跟踪,可能包含更多信息:gist.github.com/wpatter6/3ec8def984e5e0ef532653c149020804
-
nativescript-purchase 现在是 proplugins 的一部分。在readme 中,它声明它只支持 pre-Nativescript 6。不过我不确定这是否会导致您的错误。
-
我希望我能帮助你,因为我遇到了类似的问题。就我而言,我使用的是 nativescript angular,而 --env.aot 解决了我的问题。您可以尝试在 nativescript 6 上创建一个新项目,并寻找与您的项目(AndroidManifest、Gradle 等)的结构差异。祝你好运!找到答案后,您应该发布答案。
标签: nativescript nativescript-vue