我遇到的问题似乎只发生在运行 Android OS 3.1 的联想 Thinkpad 平板电脑上。我正在使用 NDK 运行本机应用程序。该应用程序在模拟器和其他设备上运行良好。
每当我分配一个 int64_t(定义为 long long)时,我都会遇到带有信号 (4) 的 SIGILL 崩溃。例如,这些行将在设备上崩溃。
int64_t i = 0;
long long j = 0;
我应该注意,应用程序运行良好,我可以看到菜单呈现正确、动画和等待输入。当我触摸时,我为时间戳分配 int64 变量,这就是崩溃发生的时候。无论我在这个应用程序中分配 int64 的位置,我都会崩溃。
奇怪的是,我加载了 NDK 附带的本机活动示例并尝试分配上述数据类型,它工作正常。两个应用程序具有相同的 Application.mk 和非常相似的 Android.mk 文件。我也尝试过清理项目。
我真的不确定接下来要看什么。