Skip to content

Allow Developers to Manually Request Permissions when using CameraView, FileSaver, FolderPicker and SpeechToText#607

Open
VladislavAntonyuk wants to merge 6 commits intoMicrosoftDocs:mainfrom
VladislavAntonyuk:2934-mct-docs
Open

Allow Developers to Manually Request Permissions when using CameraView, FileSaver, FolderPicker and SpeechToText#607
VladislavAntonyuk wants to merge 6 commits intoMicrosoftDocs:mainfrom
VladislavAntonyuk:2934-mct-docs

Conversation

@VladislavAntonyuk
Copy link
Contributor

No description provided.

@learn-build-service-prod
Copy link

PoliCheck Scan Report

The following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 and severity-2 issues. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans.

✅ No issues found

More information about PoliCheck

Information: PoliCheck | Severity Guidance | Term
For any questions: Try searching the learn.microsoft.com contributor guides or post your question in the Learn support channel.

@learn-build-service-prod
Copy link

Learn Build status updates of commit 86932e6:

✅ Validation status: passed

File Status Preview URL Details
docs/maui/essentials/file-saver.md ✅Succeeded View
docs/maui/essentials/folder-picker.md ✅Succeeded View
docs/maui/essentials/speech-to-text.md ✅Succeeded View
docs/maui/views/camera-view.md ✅Succeeded View

For more details, please refer to the build report.

@learn-build-service-prod
Copy link

Learn Build status updates of commit a6d2eb8:

✅ Validation status: passed

File Status Preview URL Details
docs/maui/essentials/file-saver.md ✅Succeeded View
docs/maui/essentials/folder-picker.md ✅Succeeded View
docs/maui/essentials/speech-to-text.md ✅Succeeded View
docs/maui/views/camera-view.md ✅Succeeded View

For more details, please refer to the build report.

@learn-build-service-prod
Copy link

PoliCheck Scan Report

The following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 and severity-2 issues. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans.

✅ No issues found

More information about PoliCheck

Information: PoliCheck | Severity Guidance | Term
For any questions: Try searching the learn.microsoft.com contributor guides or post your question in the Learn support channel.

@VladislavAntonyuk
Copy link
Contributor Author

@bijington @jfversluis could you please review

Copilot AI review requested due to automatic review settings January 16, 2026 17:34
@learn-build-service-prod
Copy link

PoliCheck Scan Report

The following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 and severity-2 issues. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans.

✅ No issues found

More information about PoliCheck

Information: PoliCheck | Severity Guidance | Term
For any questions: Try searching the learn.microsoft.com contributor guides or post your question in the Learn support channel.

@learn-build-service-prod
Copy link

Learn Build status updates of commit fc4d096:

✅ Validation status: passed

File Status Preview URL Details
docs/maui/essentials/file-saver.md ✅Succeeded View
docs/maui/essentials/folder-picker.md ✅Succeeded View
docs/maui/essentials/speech-to-text.md ✅Succeeded View
docs/maui/views/camera-view.md ✅Succeeded View

For more details, please refer to the build report.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds documentation for manual permission requests required when using CameraView, FileSaver, FolderPicker, and SpeechToText features. The changes emphasize that developers must explicitly request necessary permissions before using these components.

Changes:

  • Added permission request documentation and code examples for CameraView (camera and microphone permissions)
  • Added permission request documentation for FileSaver (storage read/write permissions)
  • Added permission request documentation for FolderPicker (storage read permissions)
  • Added permission request documentation for SpeechToText (microphone and speech recognition permissions)

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 5 comments.

File Description
docs/maui/views/camera-view.md Added microphone permission requirements for video recording and manual permission request examples
docs/maui/essentials/speech-to-text.md Restructured to add request permissions section with examples for microphone and speech-to-text permissions
docs/maui/essentials/folder-picker.md Restructured to add request permissions section with storage read permission example
docs/maui/essentials/file-saver.md Restructured to add request permissions section with storage read/write permission examples
Comments suppressed due to low confidence (1)

docs/maui/essentials/folder-picker.md:1

  • Similar to CameraView, the permission result is captured but not checked. Consider adding an example that shows how to verify the permission was granted before proceeding with folder picking operations.
---

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Developers must manually request Permissions.Camera and/or Permissions.Microphone:

```csharp
var cameraPermissionsRequest = await Permissions.RequestAsync<Permissions.Camera>();
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The variable captures the result of RequestAsync but the returned value is not used or checked. Consider adding guidance about checking the permission status, similar to the pattern shown in the SpeechToText example where the result is checked against PermissionStatus.Granted.

Copilot uses AI. Check for mistakes.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot commit changes based on this feedback

In case you plan to record video, request Microphone permissions:

```csharp
var microphonePermissionsRequest = await Permissions.RequestAsync<Permissions.Microphone>();
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The variable captures the result of RequestAsync but the returned value is not used or checked. Consider adding guidance about checking the permission status or showing a complete example that demonstrates how to verify permissions were granted.

Copilot uses AI. Check for mistakes.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot commit changes based on this feedback

Copy link
Collaborator

@bijington bijington left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In general this looks good but I think the copilot suggestions are worth actioning

VladislavAntonyuk and others added 3 commits February 6, 2026 15:25
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@learn-build-service-prod
Copy link

PoliCheck Scan Report

The following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 and severity-2 issues. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans.

✅ No issues found

More information about PoliCheck

Information: PoliCheck | Severity Guidance | Term
For any questions: Try searching the learn.microsoft.com contributor guides or post your question in the Learn support channel.

@learn-build-service-prod
Copy link

Learn Build status updates of commit 8dc199a:

✅ Validation status: passed

File Status Preview URL Details
docs/maui/essentials/file-saver.md ✅Succeeded View
docs/maui/essentials/folder-picker.md ✅Succeeded View
docs/maui/essentials/speech-to-text.md ✅Succeeded View
docs/maui/views/camera-view.md ✅Succeeded View

For more details, please refer to the build report.

@learn-build-service-prod
Copy link

PoliCheck Scan Report

The following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 and severity-2 issues. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans.

✅ No issues found

More information about PoliCheck

Information: PoliCheck | Severity Guidance | Term
For any questions: Try searching the learn.microsoft.com contributor guides or post your question in the Learn support channel.

@learn-build-service-prod
Copy link

Learn Build status updates of commit e0e02e1:

✅ Validation status: passed

File Status Preview URL Details
docs/maui/essentials/file-saver.md ✅Succeeded View
docs/maui/essentials/folder-picker.md ✅Succeeded View
docs/maui/essentials/speech-to-text.md ✅Succeeded View
docs/maui/views/camera-view.md ✅Succeeded View

For more details, please refer to the build report.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants