[UWP] Custom Capability的使用
Custom Capability 是uwp開發中普通開發者較為不常用的內容,但是在一些OEM和驅動廠商,使用頻率比較高
Custom Capability 有兩種用戶:
1.普通應用程序開發者;
2.Custom Capability 擁有者(一般為OEM,驅動廠商,比如Realtek,Dolby,Intel)
一、對于應用程序的開發者
(可以去這兒看微軟的官方文檔:https://docs.microsoft.com/en-us/windows-hardware/drivers/devapps/using-a-custom-capability-to-pair-hsa-with-driver)
1.獲取自己 App 的 PFN (Package Family Name)
注意:PFN不能自己填,在 Windows Developer Center 中創建 你自己的 App 后,PFN就已經定下來了,不能更改,所以可以去 微軟開發者中心的 Dashborad 中,查看自己 App 的 PFN.
2.獲取 Certificate Signature Hash
C:\Windows\System32\certutil.exe -dump 證書名稱
在打印出的信息中,找到 “Signature Hash”
注意:證書需要使用最終上傳應用商店所使用的證書,這個證書會在你創建上傳往商店的程序包時,VS自動生成,后綴為 ".cer"。
3.提交1、2步驟取得的 PFN 和 Hash 值,一般是發送給你需要使用的 Custom Capability 的提供者,他們會為你生成一個 SCCD (Signed custom capability Descriptor) 文件
注意:其實很大程度上,app 的開發者就是 custom capability 的提供者,如果真不是,你可以選擇電話,郵件,微信和提供者取得聯系。
4.將SCCD文件放到你App工程根目錄,并在工程中引用,并將該文件的 Build Action 設置成為 Content
5.在 App 的配置清單文件中添加對該 Custom Capability 的引用
<Capabilities> <uap4:CustomCapability Name=”CompanyName.customCapabilityName_Publisher ID” /> </Capabilities>
至此,就可以使用該 Custom Capability 所支持的 Driver 或者 RPC service 了。
備注:
通常 Custom Capability 的擁有者對你的應用添加簽名需要一定時間,十天半個月是有可能的,所以為了不影響你的開發進度,可以在開發者模式下,使用一個測試的 SCCD 文件,文件配置如下
<?xml version="1.0" encoding="utf-8"?> <CustomCapabilityDescriptor xmlns="http://schemas.microsoft.com/appx/2016/sccd" xmlns:s="http://schemas.microsoft.com/appx/2016/sccd"> <CustomCapabilities> <CustomCapability Name="你要使用的 Custom Capability 的名稱"></CustomCapability> </CustomCapabilities> <AuthorizedEntities> <AuthorizedEntity AppPackageFamilyName="你的 APP 的 PFN " CertificateSignatureHash="64個字母數字組合"></AuthorizedEntity> </AuthorizedEntities> <Catalog>FFFF</Catalog> </CustomCapabilityDescriptor>
等到正式的 SCCD 文件簽名完成后,就可以替換這個 測試版的文件了。
待續......

浙公網安備 33010602011771號