使用自動播放功能來自動啟動 (HTML)
[ 本文的目標對象是撰寫 Windows 執行階段 App 的 Windows 8.x 和 Windows Phone 8.x 開發人員。如果您正在開發適用於 Windows 10 的 App,請參閱 最新文件 ]
用途
當使用者將裝置連接至電腦時,您可以使用「自動播放」,讓您的應用程式成為一個選項。這些裝置包含非磁碟區型裝置 (例如相機或媒體播放裝置) 或磁碟區型裝置 (例如 USB 隨身碟、SD 記憶卡或 DVD)。當使用者使用透過鄰近性 (輕觸) 方式在兩台電腦之間分享檔案時,您也可以使用「自動播放」****,讓您的應用程式成為一個選項。
在這個章節中
主題 | 說明 |
---|---|
您可以登錄應用程式做為自動播放內容事件的選項。將磁碟區裝置 (例如,相機記憶卡、隨身碟或 DVD) 插入電腦時,就會引發「自動播放」內容事件。 |
|
您可以登錄應用程式做為自動播放裝置事件的選項。將裝置連接到電腦時,就會引發「自動播放」裝置事件。 |
|
將磁碟區裝置 (例如記憶卡或隨身碟) 連接到電腦時,您可以將它識別為「自動播放」裝置。當您想為磁碟區裝置建立特定的「自動播放」app 關聯以提供給使用者時,這項功能格外有用。 |
開發人員對象
開發人員會在建立應用程式以回應使用者起始的裝置連線時使用「自動播放」。藉由為特定裝置提供處理常式,您可以使用「自動播放」來代替使用者執行動作。當使用者連接裝置時,「自動播放」會判斷裝置類型,然後為非磁碟區裝置引發裝置事件,或為磁碟區裝置引發內容事件。您可以在應用程式資訊清單中對特定事件類型新增一個 [宣告],藉此登錄與您的應用程式對應的事件。建置和部署應用程式後,「自動播放」會識別出該應用程式宣告。接著「自動播放」****會將它加入使用者可以採用的動作清單中,讓使用者藉此回應該事件。如需範例,請參閱登錄自動播放內容的應用程式。
您也可以在使用者收到透過鄰近性 (輕觸) 方式分享的檔案時執行動作。在這種情況下,檔案會放到目標電腦的暫存資料夾,然後「自動播放」會根據分享的檔案類型引發內容事件。
注意 如果您是裝置製造商,而且想將您的 Windows 市集裝置應用程式關聯為裝置的「自動播放」處理常式,可在裝置中繼資料中識別該應用程式。如需詳細資訊,請參閱 Windows 市集裝置應用程式的自動播放。
自動播放事件
「自動播放」系統允許應用程式登錄多種裝置和磁碟區 (磁碟) 連接事件。若要登錄「自動播放」****內容事件,您必須在套件資訊清單中啟用 [抽取式存放裝置] 功能。下表顯示您可以登錄的事件以及事件的引發時機。
案例 | 事件 | 說明 |
---|---|---|
使用相機上的相片 | WPD\ImageSource | 如果相機被識別為 Windows 可攜式裝置且提供 ImageSource 功能,則引發事件。 |
使用音訊播放器上的音樂 | WPD\AudioSource | 如果媒體播放器被識別為 Windows 可攜式裝置且提供 AudioSource 功能,則引發事件。 |
使用相機上的視訊 | WPD\VideoSource | 如果相機被識別為 Windows 可攜式裝置且提供 VideoSource 功能,則引發事件。 |
存取已連接的快閃磁碟機或外接式硬碟 | StorageOnArrival | 磁碟機或磁碟區連接到電腦後引發事件。 如果磁碟機或磁碟區在磁碟的根目錄有 DCIM、AVCHD 或 PRIVATE\ACHD 資料夾,則會引發 ShowPicturesOnArrival 事件來代替。 |
使用大型存放裝置 (傳統裝置) 的相片 | ShowPicturesOnArrival | 當磁碟機或磁碟區在磁碟的根目錄有 DCIM、AVCHD 或 PRIVATE\ACHD 資料夾時,就會引發事件。如果使用者已經在 [自動播放] 控制台中啟用 [選擇要對每種媒體類型執行的動作],則「自動播放」會檢查連接至電腦的磁碟區,判斷磁碟上的內容類型。找到相片時,會引發 ShowPicturesOnArrival。 |
使用鄰近性分享 (輕觸並傳送) 方式接收相片 | ShowPicturesOnArrival | 使用者利用鄰近性 (輕觸並傳送) 功能傳送內容時,「自動播放」會檢查分享的檔案來判斷內容的類型。找到相片時,會引發 ShowPicturesOnArrival。 |
使用大型存放裝置 (傳統裝置) 上的音樂 | PlayMusicFilesOnArrival | 如果使用者已經在 [自動播放] 控制台中啟用 [選擇要對每種媒體類型執行的動作],則「自動播放」會檢查連接至電腦的磁碟區,判斷磁碟上的內容類型。 找到音樂檔案時,會引發 PlayMusicFilesOnArrival。 |
使用鄰近性分享 (輕觸並傳送) 方式接收音樂。 | PlayMusicFilesOnArrival | 使用者利用鄰近性 (輕觸並傳送) 功能傳送內容時,「自動播放」會檢查分享的檔案來判斷內容的類型。找到音樂檔案時,會引發 PlayMusicFilesOnArrival。 |
使用大型存放裝置 (傳統裝置) 上的影片 | PlayVideoFilesOnArrival | 如果使用者已經在 [自動播放] 控制台中啟用 [選擇要對每種媒體類型執行的動作],則「自動播放」會檢查連接至電腦的磁碟區,判斷磁碟上的內容類型。找到影片檔案時,會引發 PlayVideoFilesOnArrival。 |
使用鄰近性分享 (輕觸並傳送) 方式接收影片 | PlayVideoFilesOnArrival | 使用者利用鄰近性 (輕觸並傳送) 功能傳送內容時,「自動播放」會檢查分享的檔案來判斷內容的類型。找到影片檔案時,會引發 PlayVideoFilesOnArrival。 |
處理來自已連接裝置的混合類型檔案 | MixedContentOnArrival | 如果使用者已經在 [自動播放] 控制台中啟用 [選擇要對每種媒體類型執行的動作],則「自動播放」會檢查連接至電腦的磁碟區,判斷磁碟上的內容類型。如果找不到特定的內容類型 (例如,相片),會引發 MixedContentOnArrival。 |
處理以鄰近性分享 (輕觸並傳送) 方式傳送的混合類型檔案 | MixedContentOnArrival | 使用者利用鄰近性 (輕觸並傳送) 功能傳送內容時,「自動播放」會檢查分享的檔案來判斷內容的類型。如果找不到特定的內容類型 (例如,相片),會引發 MixedContentOnArrival。 |
處理光學媒體的視訊 | PlayDVDMovieOnArrival PlayBluRayOnArrival PlayVideoCDMovieOnArrival PlaySuperVideoCDMovieOnArrival |
|
處理光學媒體的音樂 | PlayCDAudioOnArrival PlayDVDAudioOnArrival |
|
播放增強型磁碟 | PlayEnhancedCDOnArrival PlayEnhancedDVDOnArrival |
|
處理可燒錄的光碟片 | HandleCDBurningOnArrival HandleDVDBurningOnArrival HandleBDBurningOnArrival |
|
處理任何其他裝置或磁碟區連線 | UnknownContentOnArrival | 萬一找到的內容不符合任何自動播放內容類型時,則為所有事件引發。 不建議使用這個事件。您只能為應用程式註冊它可以處理的相關「自動播放」事件。 |
您可以在磁碟區的 autorun.inf 檔案中使用 CustomEvent 項目,指定「自動播放」引發自訂的「自動播放」內容事件。如需詳細資訊,請參閱 Autorun.inf 項目。
您可以針對應用程式的 package.appxmanifest 檔案新增延伸,將應用程式登錄為「自動播放內容」或「自動播放裝置」事件處理常式。如果您使用 Microsoft Visual Studio,可以在 [宣告] 索引標籤中新增 [自動播放內容]**** 或 [自動播放裝置] 宣告。如需範例,請參閱登錄自動播放內容的應用程式。如果您直接編輯應用程式的 package.appxmanifest 檔案,請在套件資訊清單中新增 Extension 元素,以指定 windows.autoPlayContent 或 windows.autoPlayDevice 做為 Category。例如,套件資訊清單中的下列項目可新增「自動播放內容」延伸,以便將應用程式登錄為 ShowPicturesOnArrival 事件的處理常式。
<Applications>
<Application Id="AutoPlayHandlerSample.App">
<Extensions>
<Extension Category="windows.autoPlayContent">
<AutoPlayContent>
<LaunchAction Verb="show" ActionDisplayName="Show Pictures"
ContentEvent="ShowPicturesOnArrival" />
</AutoPlayContent>
</Extension>
</Extensions>
</Application>
</Applications>