Office.DevicePermissionType enum
Spécifie la fonctionnalité d’appareil à laquelle un complément demande l’accès.
Remarques
Applications : cette API est prise en charge par les applications Office suivantes lorsqu’elles s’exécutent dans des navigateurs basés sur Chromium, tels que Microsoft Edge et Google Chrome.
Excel sur le web
Outlook sur le web
PowerPoint sur le web
Word sur le web
Il est également pris en charge dans la nouvelle version d’Outlook sur Windows.
Ensemble de conditions requises : DevicePermission 1.1
Exemples
// Request permission from a user to access their device capabilities.
const host = Office.context.host;
if (host === Office.HostType.Excel || host === Office.HostType.PowerPoint || host === Office.HostType.Word) {
if (Office.context.platform === Office.PlatformType.OfficeOnline) {
const deviceCapabilities = [
Office.DevicePermissionType.camera,
Office.DevicePermissionType.microphone
];
Office.devicePermission
.requestPermissions(deviceCapabilities)
.then((isGranted) => {
if (isGranted) {
console.log("Permission granted.");
// Reload your add-in before you run code that uses the device capabilities.
location.reload();
} else {
console.log("Permission has been previously granted and is already set in the iframe.");
// Since permission has been previously granted, you don't need to reload your add-in.
// Do something with the device capabilities.
}
})
.catch((error) => {
console.log("Permission denied.");
console.error(error);
// Do something when permission is denied.
});
}
} else if (host === Office.HostType.Outlook) {
if (Office.context.mailbox.diagnostics.hostName === "OutlookWebApp") {
const deviceCapabilities = [
Office.DevicePermissionType.camera,
Office.DevicePermissionType.geolocation,
Office.DevicePermissionType.microphone
];
Office.devicePermission.requestPermissionsAsync(deviceCapabilities, (asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Permission denied.");
// Do something when permission is denied.
} else {
if (asyncResult.value) {
console.log("Permission granted.");
// Reload your add-in before you run code that uses the device capabilities.
location.reload();
} else {
console.log("Permission has been previously granted and is already set in the iframe.");
// Since permission has been previously granted, you don't need to reload your add-in.
// Do something with the device capabilities.
}
}
});
}
} else {
console.log("The add-in isn't running in Excel, Outlook, PowerPoint, or Word.");
}
Champs
camera | Le complément demande l’accès à la caméra de l’utilisateur. |
geolocation | Le complément demande l’accès à la géolocalisation de l’utilisateur. Important : l’accès à la géolocalisation d’un utilisateur n’est pris en charge que dans Outlook sur le web et la nouvelle version d’Outlook sur Windows. |
microphone | Le complément demande l’accès au microphone de l’utilisateur. |