Skip to content

打开 RMS 保护文档

福昕 PDF SDK iOS 版支持打开 Microsoft RMS(Rights Management Services)保护的 PDF 文档(通常以 .ppdf 为扩展名)。RMS 功能通过 FSPDFViewCtrl 的 RMS 扩展方法实现。

前置条件

  1. 已注册 Microsoft Azure 应用,获取 Client ID 和 Redirect URI。
  2. SDK 包中包含 RMS 相关依赖库(MSAL 等)。

配置 RMS

在打开文档之前,配置 Azure 应用信息:

objc
[pdfViewCtrl setRMSAppClientId:@"YOUR_APP_CLIENT_ID"
                    redirectURI:@"YOUR_REDIRECT_URI"];

处理 MSAL 回调

UIApplicationDelegate 方式

AppDelegate 中转发 URL:

objc
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url
            options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
    return [FSPDFViewCtrl handleMSALResponse:url
                           sourceApplication:options[UIApplicationOpenURLOptionsSourceApplicationKey]];
}

UISceneDelegate 方式(iOS 13+)

SceneDelegate 中转发 URL:

objc
- (void)scene:(UIScene *)scene openURLContexts:(NSSet<UIOpenURLContext *> *)URLContexts {
    UIOpenURLContext *context = URLContexts.anyObject;
    [FSPDFViewCtrl handleMSALResponse:context.URL
                    sourceApplication:context.options.sourceApplication];
}

检查文档是否为 RMS 保护

objc
BOOL isRMS = [pdfViewCtrl isRMSProtected];

检查 PPDF 格式

objc
BOOL isPPDF = [pdfViewCtrl isPPDF];

备注

RMS 功能需要网络连接以验证用户权限。首次打开 RMS 文档时,会弹出 Microsoft 登录界面。