私のアプリケーションは、HttpClientを使用していくつかのREST APIエンドポイントを利用しています。私のGetAsyncは、デバッグモードとリリースモードの両方で使用されているときに、完全に正常に動作しています。Xamarin.Android HttpClientリリース時にPostAsyncがキャンセルされる
リリースモードでAPIに大きな画像をPostAsyncしようとすると問題が発生します。 PostAsyncがキャンセルされ、WebExceptionが発生します(「タスクがキャンセルされました」というメッセージが表示されます)。私はコード内のどこにでもタスクをキャンセルしません。タイムアウトを増やしても動作しません - PostAsyncが起動してから約20秒後にエラーが発生します。
デバッグモードでは、PostAsyncは正常に動作し、適切な接続品質が存在する場合は数秒で画像をアップロードします。リリースで動作させるには、設定の共有ランタイム使用オプションをチェックする必要があります。
このような現象の原因は何ですか? Playストアでリリースする必要があるため、アプリケーションでShared Runtimeを使用したくありません。
ありがとうございました。
dotnet用にOkHttp HttpClientを試しましたか? XamarinのHttpClientは壊れています。設定してもタイムアウトは考慮しません。 –