【问题标题】:My xamarin.ios app gets crashed on iphone but running fine on simulator我的 xamarin.ios 应用程序在 iphone 上崩溃但在模拟器上运行良好
【发布时间】:2015-04-02 12:24:56
【问题描述】:

我正在使用 xamarin.ios 工作室开发一个 ios 应用程序。

我已经完成了,它在模拟器和 iphone4 上也运行良好。后来现在我面对应用程序在 iphone 上崩溃但在模拟器上运行良好。我找不到。请帮帮我。

这里是一些错误日志:

Thread 0 Crashed:
libsystem_kernel.dylib          0x395671f0 __pthread_kill + 8
libsystem_pthread.dylib         0x395d1792 pthread_kill + 54
libsystem_c.dylib               0x39517fd8 abort + 72
365Invoicing                    0x0064525e 0xec000 + 5608030
365Invoicing                    0x00649e06 0xec000 + 562739
libsystem_platform.dylib        0x395cbf90 _sigtramp + 40
libsystem_pthread.dylib         0x395d1792 pthread_kill + 54
libsystem_c.dylib               0x39517fd8 abort + 72
365Invoicing                    0x006de4b8 0xec000 + 6235320
365Invoicing                    0x006456a4 0xec000 + 5609124
365Invoicing                    0x006502ba 0xec000 + 5653178
365Invoicing                    0x00644052 0xec000 + 5603410
365Invoicing                    0x0063e5b2 0xec000 + 5580210
365Invoicing                    0x0031e71c 0xec000 + 2303772
365Invoicing                    0x00107c44 0xec000 + 113732
365Invoicing                    0x0015ab7c 0xec000 + 453500
365Invoicing                    0x006dd464 0xec000 + 6231140
365Invoicing                    0x006deb98 0xec000 + 6237080
CoreFoundation                  0x2e7f4284 __handleUncaughtException + 576
libobjc.A.dylib                 0x38fa4f50 _objc_terminate() + 172
libc++abi.dylib                 0x3885d1c4 std::__terminate(void (*)()) + 76
libc++abi.dylib                 0x3885cd28 __cxa_rethrow + 96
libobjc.A.dylib                 0x38fa4e12 objc_exception_rethrow + 38
CoreFoundation                  0x2e727f30 CFRunLoopRunSpecific + 636
CoreFoundation                  0x2e727c9e CFRunLoopRunInMode + 102
UIKit                           0x31078ecc -[UIApplication _run] + 756
UIKit                           0x31074148 UIApplicationMain + 1132
365Invoicing                    0x0015a7d0 0xec000 + 452560
365Invoicing                    0x00124708 0xec000 + 231176
365Invoicing                    0x001246c8 0xec000 + 231112
365Invoicing                    0x000f103c 0xec000 + 20540
365Invoicing                    0x002e5b64 0xec000 + 207139
365Invoicing                    0x0064fc5c 0xec000 + 5651548
365Invoicing                    0x0068c0c6 0xec000 + 5898438
365Invoicing                    0x0068f36a 0xec000 + 5911402
365Invoicing                    0x0068f1a8 0xec000 + 5910952
365Invoicing                    0x0063e3d4 0xec000 + 5579732
365Invoicing                    0x006dbfa0 0xec000 + 6225824
365Invoicing                    0x0062251c 0xec000 + 5465372
libdyld.dylib                   0x394b1ab4 start + 0

只有 Theard 0 崩溃了。其他线程运行良好。

我该怎么做才能解决这个问题?

【问题讨论】:

  • 我是否在 Main.cs 文件中使用线程和安全功能?
  • 关心象征结果?为什么不在设备上调试应用程序并查看它在哪里崩溃?然后在它周围放一些尝试/捕捉。此外,您应该检查 Xamarin.Insights 或 Raygun.io。

标签: ios iphone crash xamarin.ios


【解决方案1】:

您需要查看应用程序的控制台输出,因为它由于未处理的 Objective-C 异常而崩溃

【讨论】:

  • de icaza ,好的,先生,我会看看 Objective C。我还有一个疑问要问你。如何在钥匙串中保存用户名和密码?我使用您在 GitHub 上的示例代码将其存储。它在 iOS 模拟器上也运行良好。但是在尝试使用真实设备时,应用程序崩溃了。什么问题?
【解决方案2】:

尝试使用来处理您的异常,

@try 
{
//your code goes here.
}
@catch
{
//your catch block
}
@finally 
{
//your finally block
}

干杯。

【讨论】:

  • vignesh,在 xamarin 项目的 main.cs 中尝试捕获需要什么?兄弟,我什么都没做。
最近更新 更多