Я пытаюсь сделать что-то похожее, и ниже приведено решение, которое отлично работает для меня. Надеюсь, это поможет.
1) На портале для разработчиков Withings зарегистрируйте Callback URI как:
https://[yourdomain]/callback
Замените [yourdomain] своим доменом, например:
https://testtest.azurewebsites.net/callback
2) В Android Studio [ 1110]
<string name="domain">testtest.azurewebsites.net</string>
<activity android:name=".RedirectHereActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="@string/domain"
android:pathPrefix="/callback"
android:scheme="https"/>
</intent-filter>
</activity>
Таким образом, обратный вызов перенаправляет на это действие вместе с кодом доступа.
Смотрите на SharpZipLib. Не уверенный, если это подвергается тому же ограничению, но стоящий взгляда.
Ищите библиотеки, которые поддерживают DEFLATE64 (не Zip64, это - расширение формата zip-файла). Zip Xceed для.NET действительно поддерживает Deflate64, и я уверен, что другие делают также.
Существует пример кода в CodeProject, пользующемся библиотекой С 7 zip.
Лицензия открыта, таким образом, необходимо смочь использовать это в проекте.
С 7 zip также поддерживает файлы GZ.
К вашему сведению мы удалили предел на 4 ГБ из DeflateStream в.NET 4.
Взглянув вокруг, кажется, что много людей встретилось с этой проблемой. Система. IO.Compressio. Разъяснения DeflateStream, кажется, являются самыми всесторонними.
Единственная реализация я смог найти это, кажется, преодолевает эту проблему при помощи Zip64, Zip Xceed для.NET.
Однако это очень дорого, и я не уверен, было ли это комплект Ваши потребности.
Править:
Кажется, существует множество реализаций Zip64 для.NET, но я не могу найти никого, которые свободны.
DotNetZip делает ZIP64 для.NET, и это свободно. Но Zip64 не является тем же как Deflate64.
Хотя в этой документации говорится, что ограничение в 4 ГБ предназначено как для DeflateStream, так и для GZipStream, только GZipStream ограничен из-за контрольной суммы CRC32. Если вам не нужен CRC32, используйте DeflateStream.