b站全屏輸入彈幕這個功能很難做嗎?

為什麼現在都還要自己去設置里改才能用?
而且全屏時還不能輸入中文
到現在竟然還有這樣的bug,這個功能怎麼這麼麻煩呢?


2016-11-14更新

B站如今有HTML5播放器了,全屏彈幕輸入現在也不是問題了。
最終的解決方案還是HTML5,Flash真的乙烷了。
===========================
原答案發表於2014-10-08

很難做。

不光是B站,只要涉及到Flash全屏輸入的問題,都很難。只是B站這個需求更大一些而已。
Flash程序出於安全考慮,在全屏模式下,並不是所有鍵盤事件都發送給Flash程序,而是只響應幾個鍵。
在很早很早的版本中,Adobe公司就禁止了Flash程序自己修改顯示狀態(即程序不得自行進入全屏,只能通過響應滑鼠事件)。
後來的某一次更新(11.2),全屏輸入回來了。這讓很多AS開發者非常開心。然後大家悲傷的發現。只有Flash自帶的控制項才可以在全屏輸入。想要自己響應鍵盤事件還是沒門。(更新:剛剛發現是可以的,需要在Load的時候執行一行代碼,修改DisplayState的值。)而且在進入全屏的時候會有一個大大的提示,是否允許全屏輸入。

對於彈幕來說,這件事情也許就解決了。
但是人們很快發現,解決的僅僅是IE瀏覽器。

在Chrome等瀏覽器上,Flash插件並不依賴安裝在系統中的那個,而是瀏覽器自帶。這個Flash,又是Adobe公司「由於安全問題」,禁止了輸入法鉤子。。。(真想在這裡加個汗的表情。。。))

於是,全屏能輸入了,但是,僅限英文。

目前B站的發展就到這裡了。
要真正解決這個問題。按照Adobe公司現在的態度來說,應該是不可能的。

不過一直讓我不清楚的是(然後我就想去提一個問題):
全屏輸入有什麼安全問題呢?


推薦閱讀:

socket編程到底是什麼?
大學不主攻ACM,進工作室自學android做小項目,會有前途嗎?
如何看待CSDN強制要求用戶以主動發簡訊的方式來驗證手機號?
當碼農究竟有多累?
互聯網+被炒的那麼熱,到底有何意義?

TAG:程序員 | AdobeFlash | 嗶哩嗶哩 |