2011-07-18 10 views
3

私はMonotouchアプリケーションをWCFサービスで動作させようとしています。すべてうまく動作しますが、毎回(10 - 30サービスコール)、アプリはSIGILでクラッシュします。デバッガはそれを言います。 ランダムな場所で起こります。iPhone/iPadプロジェクトでWCFを扱う

他の従業員は、同じサービスを使用するiPhoneアプリで動作します。同じ問題ですが、より頻繁です。

シミュレータでテストするとすばらしいことになります。

誰かが同じ問題を抱えている場合は、助けてください。 asmxサービスのヘルプを使用しますか?

ありがとうございます。

乾杯

+2

は 'フックアップAppDomain.CurrentDomain.UnhandledException'あなたの 'static void Main'にtry-catchを入れて、' Console.WriteLine'に例外を書いてください。デバイスを接続し、XCodeのコンソールを開いてクラッシュさせます。 XCodeのコンソールで.Netの例外を見ることができるはずです。これ以上の情報はありますか? – jonathanpeppers

+0

お返事ありがとうございました。しかし、私はよりスマートではありません。 Jul 18 17:22:17 unknown com.apple.SpringBoard [30] :CoreAnimation:タイムアウトフェンス500 ---例外はありません!そして、これはアプリのタイムアウトではありませんでした。 –

+0

サービスはいつ呼びますか?万が一アプリが起動したら? – Ian1971

答えて

2

私は似たような問題がありました。私のデスクトップWCFクライアントコードをMonoTouchで実行するために長い間働いていました。

クラッシュレポートを記号化して分析すると、毎回WCFスタックのどこかでアプリが死んでいたことがわかりました。しかし、私は問題を簡単で再現性のある例に引き出すことができませんでした。

私はServiceStackフレームワーク(http://www.servicestack.net/)を使用して、サービスの前に単純なXML RESTエンドポイントをスローし、単純なWebClientリクエストといくつかのヘルパーメソッドを使用して呼び出しましたXMLへの/からの私のオブジェクト(DataContractSerializerが遅すぎました)。

サーバー側にアクセスできる場合は、これが最も簡単な方法です。

+0

私はasmxサービスに切り替えました。魅力のように動作します。それは全くクラッシュしていない。しかし、あなたの返事に感謝します。 –

10

WCFは、モバイルアプリケーションでSOAPを使用すると、大量のトラフィックが発生するサーバーで膨大な時間を費やすオプションで、悪い習慣と見なされるほどのリソースが浪費されます。

ServiceStackはまた、あなたがServiceStackの強い型付けされた、コード-GEN-無料サービスクライアントの使用.NET's fastest JSONJSVテキストシリアライザを使用して、同じWebサービスにアクセスすることを可能にする非常にスリムかつ高速なオプションです。

ServiceStackのサービスクライアントのMonoTouchでバージョン

は別に提供されています: https://github.com/ServiceStack/ServiceStack/tree/master/release/latest/MonoTouch

し、使用する方法を示す例MonoTouchでアプリケーションがここにあります: https://github.com/ServiceStack/ServiceStack.Examples/tree/master/src/MonoTouch/RestFilesClient

関連する問題