You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Clarify file size limits and V2 requirements in docs
Updated XML documentation comments to specify that file sizes above 4GB require V2 protocol, and V2 requires Android 11 or above in most cases. Added remarks about 4 GiB cutoff due to 32-bit unsigned integer usage in file statistics. These clarifications affect device, sync service, and model classes, as well as issue templates.
/// <param name="useV2"><see langword="true"/> to use <see cref="SyncCommand.RCV2"/> and <see cref="SyncCommand.STA2"/>; otherwise, <see langword="false"/> use <see cref="SyncCommand.RECV"/> and <see cref="SyncCommand.STAT"/>.</param>
224
224
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
225
225
/// <returns>A <see cref="Task"/> which represents the asynchronous operation.</returns>
226
-
/// <remarks>V2 need Android 8 or above.</remarks>
226
+
/// <remarks>File size bigger than 4GB need V2, and V2 need Android 11 or above.</remarks>
/// <param name="path">The path to the file.</param>
266
266
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
267
267
/// <returns>A <see cref="Task{FileStatistics}"/> which returns a <see cref="FileStatistics"/> object that contains information about the file.</returns>
268
+
/// <remarks>The file size will be cut off at 4 GiB due to the use of a 32-bit unsigned integer.</remarks>
@@ -294,6 +295,7 @@ public static async Task<FileStatisticsEx> StatExAsync(this IAdbClient client, D
294
295
/// <param name="useV2"><see langword="true"/> to use <see cref="StatAsync(IAdbClient, DeviceData, string, CancellationToken)"/>; otherwise, use <see cref="StatExAsync"/>.</param>
295
296
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
296
297
/// <returns>A <see cref="Task{IFileStatistics}"/> which returns a <see cref="IFileStatistics"/> object that contains information about the file.</returns>
298
+
/// <remarks>The file size will be cut off at 4 GiB due to the use of a 32-bit unsigned integer.</remarks>
/// <param name="remotePath">The path to the directory on the device.</param>
306
308
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
307
309
/// <returns>A <see cref="Task{List}"/> which returns for each child item of the directory, a <see cref="FileStatistics"/> object with information of the item.</returns>
310
+
/// <remarks>The file size will be cut off at 4 GiB due to the use of a 32-bit unsigned integer.</remarks>
@@ -334,6 +337,7 @@ public static async Task<List<FileStatisticsEx>> GetDirectoryListingExAsync(this
334
337
/// <param name="useV2"><see langword="true"/> to use <see cref="GetDirectoryListingAsync(IAdbClient, DeviceData, string, CancellationToken)"/>; otherwise, use <see cref="GetDirectoryListingExAsync"/>.</param>
335
338
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
336
339
/// <returns>A <see cref="Task{IEnumerable}"/> which returns for each child item of the directory, a <see cref="IFileStatistics"/> object with information of the item.</returns>
340
+
/// <remarks>File size bigger than 4GB need V2, and V2 need Android 11 or above.</remarks>
@@ -350,6 +354,7 @@ public static Task<IEnumerable<IFileStatistics>> GetDirectoryListingAsync(this I
350
354
/// <param name="remotePath">The path to the directory on the device.</param>
351
355
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
352
356
/// <returns>An <see cref="IAsyncEnumerable{FileStatistics}"/> which returns for each child item of the directory, a <see cref="FileStatistics"/> object with information of the item.</returns>
357
+
/// <remarks>The file size will be cut off at 4 GiB due to the use of a 32-bit unsigned integer.</remarks>
@@ -385,6 +390,7 @@ public static async IAsyncEnumerable<FileStatisticsEx> GetDirectoryAsyncListingE
385
390
/// <param name="useV2"><see langword="true"/> to use <see cref="GetDirectoryListingAsync(IAdbClient, DeviceData, string, CancellationToken)"/>; otherwise, use <see cref="GetDirectoryListingExAsync"/>.</param>
386
391
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
387
392
/// <returns>An <see cref="IAsyncEnumerable{IFileStatistics}"/> which returns for each child item of the directory, a <see cref="IFileStatistics"/> object with information of the item.</returns>
393
+
/// <remarks>File size bigger than 4GB need V2, and V2 need Android 11 or above.</remarks>
/// <param name="useV2"><see langword="true"/> to use <see cref="SyncCommand.RCV2"/> and <see cref="SyncCommand.STA2"/>; otherwise, <see langword="false"/> use <see cref="SyncCommand.RECV"/> and <see cref="SyncCommand.STAT"/>.</param>
498
504
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
499
505
/// <returns>A <see cref="Task"/> which represents the asynchronous operation.</returns>
500
-
/// <remarks>V2 need Android 8 or above.</remarks>
506
+
/// <remarks>File size bigger than 4GB need V2, and V2 need Android 11 or above.</remarks>
/// <param name="callback">An optional parameter which, when specified, returns progress notifications. The progress is reported as a value between 0 and 100, representing the percentage of the file which has been transferred.</param>
184
184
/// <param name="useV2"><see langword="true"/> to use <see cref="SyncCommand.RCV2"/> and <see cref="SyncCommand.STA2"/>; otherwise, <see langword="false"/> use <see cref="SyncCommand.RECV"/> and <see cref="SyncCommand.STAT"/>.</param>
185
185
/// <param name="isCancelled">A <see cref="bool"/> that can be used to cancel the task.</param>
186
-
/// <remarks>V2 need Android 8 or above.</remarks>
186
+
/// <remarks>File size bigger than 4GB need V2, and V2 need Android 11 or above.</remarks>
@@ -403,7 +404,7 @@ public static void InstallMultiplePackage(this IAdbClient client, DeviceData dev
403
404
/// <param name="progress">An optional parameter which, when specified, returns progress notifications. The progress is reported as a value between 0 and 100, representing the percentage of the file which has been transferred.</param>
404
405
/// <param name="useV2"><see langword="true"/> to use <see cref="SyncCommand.RCV2"/> and <see cref="SyncCommand.STA2"/>; otherwise, <see langword="false"/> use <see cref="SyncCommand.RECV"/> and <see cref="SyncCommand.STAT"/>.</param>
405
406
/// <param name="isCancelled">A <see cref="bool"/> that can be used to cancel the task.</param>
406
-
/// <remarks>V2 need Android 8 or above.</remarks>
407
+
/// <remarks>File size bigger than 4GB need V2, and V2 need Android 11 or above.</remarks>
Copy file name to clipboardExpand all lines: AdvancedSharpAdbClient/Extensions/SyncServiceExtensions.Async.cs
+5-3Lines changed: 5 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -21,7 +21,7 @@ public static partial class SyncServiceExtensions
21
21
/// <param name="useV2"><see langword="true"/> to use <see cref="ISyncService.StatAsync"/>; otherwise, use <see cref="ISyncService.StatExAsync"/>.</param>
22
22
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
23
23
/// <returns>A <see cref="Task{IFileStatistics}"/> which returns a <see cref="IFileStatistics"/> object that contains information about the file.</returns>
24
-
/// <remarks>V2 need Android 8 or above.</remarks>
24
+
/// <remarks>File size bigger than 4GB need V2, and V2 need Android 8 or above.</remarks>
/// <param name="useV2"><see langword="true"/> to use <see cref="ISyncService.GetDirectoryListingAsync"/>; otherwise, use <see cref="ISyncService.GetDirectoryListingExAsync"/>.</param>
34
34
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
35
35
/// <returns>A <see cref="Task{IEnumerable}"/> which returns for each child item of the directory, a <see cref="IFileStatistics"/> object with information of the item.</returns>
36
+
/// <remarks>File size bigger than 4GB need V2, and V2 need Android 11 or above.</remarks>
@@ -49,6 +50,7 @@ public static Task<IEnumerable<IFileStatistics>> GetDirectoryListingAsync(this I
49
50
/// <param name="useV2"><see langword="true"/> to use <see cref="ISyncService.GetDirectoryListingAsync"/>; otherwise, use <see cref="ISyncService.GetDirectoryListingExAsync"/>.</param>
50
51
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
51
52
/// <returns>An <see cref="IAsyncEnumerable{IFileStatistics}"/> which returns for each child item of the directory, a <see cref="FileStatistics"/> object with information of the item.</returns>
53
+
/// <remarks>File size bigger than 4GB need V2, and V2 need Android 11 or above.</remarks>
@@ -79,7 +81,7 @@ public static Task PushAsync(this ISyncService service, Stream stream, string re
79
81
/// <param name="useV2"><see langword="true"/> to use <see cref="SyncCommand.RCV2"/> and <see cref="SyncCommand.STA2"/>; otherwise, <see langword="false"/> use <see cref="SyncCommand.RECV"/> and <see cref="SyncCommand.STAT"/>.</param>
80
82
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
81
83
/// <returns>A <see cref="Task"/> which represents the asynchronous operation.</returns>
82
-
/// <remarks>V2 need Android 8 or above.</remarks>
84
+
/// <remarks>File size bigger than 4GB need V2, and V2 need Android 11 or above.</remarks>
/// <param name="useV2"><see langword="true"/> to use <see cref="SyncCommand.RCV2"/> and <see cref="SyncCommand.STA2"/>; otherwise, <see langword="false"/> use <see cref="SyncCommand.RECV"/> and <see cref="SyncCommand.STAT"/>.</param>
110
112
/// <param name="cancellationToken">A <see cref="CancellationToken"/> that can be used to cancel the task.</param>
111
113
/// <returns>A <see cref="Task"/> which represents the asynchronous operation.</returns>
112
-
/// <remarks>V2 need Android 8 or above.</remarks>
114
+
/// <remarks>File size bigger than 4GB need V2, and V2 need Android 11 or above.</remarks>
/// <param name="progress">An optional parameter which, when specified, returns progress notifications. The progress is reported as <see cref="SyncProgressChangedEventArgs"/>, representing the state of the file which has been transferred.</param>
66
66
/// <param name="useV2"><see langword="true"/> to use <see cref="SyncCommand.RCV2"/> and <see cref="SyncCommand.STA2"/>; otherwise, <see langword="false"/> use <see cref="SyncCommand.RECV"/> and <see cref="SyncCommand.STAT"/>.</param>
67
67
/// <param name="isCancelled">A <see cref="bool"/> that can be used to cancel the task.</param>
68
-
/// <remarks>V2 need Android 8 or above.</remarks>
68
+
/// <remarks>File size bigger than 4GB need V2, and V2 need Android 11 or above.</remarks>
0 commit comments