TWI658401B - 基於虛擬化行動架構之行動通訊裝置及其相關輸入法切換方法 - Google Patents
基於虛擬化行動架構之行動通訊裝置及其相關輸入法切換方法 Download PDFInfo
- Publication number
- TWI658401B TWI658401B TW106139305A TW106139305A TWI658401B TW I658401 B TWI658401 B TW I658401B TW 106139305 A TW106139305 A TW 106139305A TW 106139305 A TW106139305 A TW 106139305A TW I658401 B TWI658401 B TW I658401B
- Authority
- TW
- Taiwan
- Prior art keywords
- input
- input method
- remote
- local
- keyboard
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 355
- 238000010295 mobile communication Methods 0.000 title claims abstract description 82
- 238000004891 communication Methods 0.000 claims abstract description 51
- 238000003860 storage Methods 0.000 claims abstract description 41
- 238000006243 chemical reaction Methods 0.000 claims description 18
- 230000004044 response Effects 0.000 description 25
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 13
- 230000005540 biological transmission Effects 0.000 description 8
- 238000004088 simulation Methods 0.000 description 7
- 238000001914 filtration Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000006748 scratching Methods 0.000 description 1
- 230000002393 scratching effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
- G06F21/84—Protecting input, output or interconnection devices output devices, e.g. displays or monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
- G06F21/83—Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/023—Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04886—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72469—User interfaces specially adapted for cordless or mobile telephones for operating the device by selecting functions from two or more displayed items, e.g. menus or icons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/038—Indexing scheme relating to G06F3/038
- G06F2203/0383—Remote input, i.e. interface arrangements in which the signals generated by a pointing device are transmitted to a PC at a remote location, e.g. to a PC in a LAN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/02—Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- User Interface Of Digital Computer (AREA)
- Telephone Function (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一種基於虛擬化行動架構之行動通訊裝置,包括:顯示裝置,用以顯示圖形化使用者介面;通訊裝置,用以提供網路連線至遠端伺服器;儲存裝置;以及控制器,耦接至通訊裝置及儲存裝置,用以從儲存裝置載入並執行指令或程式碼以於運行遠端伺服器之第一應用程式時執行以下輸入法切換方法:顯示第一應用程式之操作畫面於圖形化使用者介面;接收來自遠端伺服器的表示遠端輸入鍵盤已致能的第一通知,相應地以本地端輸入鍵盤遮蓋住上述遠端輸入鍵盤,讓使用者使用本地輸入法來進行輸入操作,並傳送所輸入內容至遠端伺服器以顯示於遠端的對應顯示位置;以及接收來自遠端伺服器的表示遠端輸入鍵盤已經關閉的第二通知,並相應地將本地端輸入鍵盤隱藏。
Description
本揭露係有關於一種基於虛擬化行動架構之行動通訊裝置及其相關輸入法控制與切換方法。
隨著行動裝置諸如智慧型手機、平板電腦等越來越普及,加上3G、4G行動網路成熟發展,促使越來越多人透過行動裝置處理公事、提昇工作效率,也使得企業員工攜帶自有裝置(Bring Your Own Device,BYOD)的安全管控愈來愈受重視。BYOD就是員工攜帶個人裝置進入公司網路,由於BYOD的出現,讓各種威脅可能經由員工疏失所造成的網路漏洞進入企業,而使得資料外洩,造成資安風險。因此,虛擬化行動架構(Virtual Mobile Infrastructure,VMI)的技術被廣泛用於BYOD管理上。
VMI的運作架構如同虛擬桌面(VDI)解決方案,所有資料都放在雲端,手機內不存放企業機密資料或應用程式(APPlication,簡稱APP),因此不必擔心資料外洩風險,進而達成可控管資料無法外洩。另一方面,目前的VMI架構在手機作業系統上、譬如ANDROID或iOS,不像傳統VDI的視窗(Windows)介面
在手機上操作不便,且需要大量的系統資源,而使用者也能經由任何設備使用企業ANDROID/iOS APP,不會受到硬體廠牌或作業系統的限制且可以直接透過最直覺的APP操作方式,進行所有功能呼叫,無須針對APP做任何學習。VMI同時解決了用手機執行VDI所帶來運算能力不夠、操作介面不友善的問題,同時透過雲端執行運算與存取,讓資料與APP不會落地在手機裡,能使企業能達到同時兼顧員工隱私與降低資安風險的目的,是企業BYOD管控的全新思維。
在VMI架構中,操作的順暢度絕對是影響成敗的重要因素,隨著4G網路的普及以及5G的投入,可預見的在將來網路速度已不會是問題,剩下的就是如何提升使用者操作經驗,而最常遇到問題的就像是輸入法這種需要人與機器交互的介面。一般而言,在VMI架構中,使用者必須使用遠端如雲端所提供的制式輸入法進行各項輸入作業,一旦操作的模式改變或自動化程度不足,常會令使用者產生抗拒排斥心理。
此外,一些現行VMI架構雖允許採用本地端(Local)輸入法來進行輸入以提升使用者體驗的順暢度,然而,由於行動裝置勒索病毒的成長率逐年攀升,這樣的做法會有資安上的隱憂。例如,在需輸入密碼的使用情境時,若一昧採用現有的本地端輸入法進行輸入作業,當本地端手機被病毒侵入時,本地端的輸入法的輸入訊號會被有心人士攔截,而使得密碼或其他重要個資被盜用/側錄,造成使用者產生額外的安全疑慮。
有鑑於此,本揭露提供一種基於虛擬化行動架構之
行動通訊裝置及其相關輸入法切換方法。
本揭露的一實施例提供一種基於虛擬化行動架構之行動通訊裝置,包括:一顯示裝置,用以顯示一圖形化使用者介面;一通訊裝置,用以提供網路連線至一遠端伺服器;一儲存裝置,用以儲存電腦可讀取之多個指令或程式碼;以及一控制器,耦接至上述通訊裝置及上述儲存裝置,用以從上述儲存裝置載入並執行上述指令或程式碼以於運行上述遠端伺服器之一第一應用程式時執行以下輸入法切換方法:顯示上述第一應用程式之一操作畫面於上述圖形化使用者介面;透過上述通訊裝置接收來自上述遠端伺服器的表示一遠端輸入法之一遠端輸入鍵盤已致能的一第一通知;相應於上述第一通知,執行一本地端輸入法之一啟動作業,透過上述顯示裝置在上述圖形化使用者介面上以一本地端輸入鍵盤遮蓋住顯示於本地端的上述遠端輸入鍵盤,讓一使用者使用上述本地端輸入法來進行輸入操作,並透過上述通訊裝置傳送上述使用者所輸入內容至上述遠端伺服器以將上述所輸入內容顯示於上述操作畫面的遠端對應顯示位置;以及透過上述通訊裝置接收來自上述遠端伺服器的表示上述遠端輸入鍵盤已經關閉的一第二通知,並相應於上述第二通知,執行上述本地端輸入法之一隱藏作業,透過上述顯示裝置在上述圖形化使用者介面上將上述本地端輸入鍵盤隱藏。
本揭露另一實施例提供一種輸入法切換方法,適用於一基於虛擬行動架構的一行動通訊裝置,上述行動通訊裝置網路連線至一遠端伺服器,包括下列步驟:顯示上述遠端伺服器之一第一應用程式之一操作畫面於一圖形化使用者介面;接收來自
上述遠端伺服器的表示一遠端輸入法之一遠端輸入鍵盤已致能的一第一通知;相應於上述第一通知,執行一本地端輸入法之一啟動作業,在上述圖形化使用者介面上以一本地端輸入鍵盤遮蓋住顯示於本地端的上述遠端輸入鍵盤,讓一使用者使用上述本地端輸入法來進行輸入操作,並透過網路傳送上述使用者所輸入內容至上述遠端伺服器以將上述所輸入內容顯示於上述操作畫面的遠端對應顯示位置;以及接收來自上述遠端伺服器的表示上述遠端輸入鍵盤已經關閉的一第二通知,並相應於上述第二通知,執行上述本地端輸入法之一隱藏作業,以在上述圖形化使用者介面上將上述本地端輸入鍵盤隱藏。
本揭露之上述方法可經由本揭露之裝置或系統來實作,其為可執行特定功能之硬體或韌體,亦可以透過程式碼方式收錄於一記錄媒體中,並結合特定硬體來實作。當程式碼被電子裝置、處理器、電腦或機器載入且執行時,電子裝置、處理器、電腦或機器變成用以實行本揭露之裝置或系統。
100‧‧‧VMI環境
10‧‧‧行動通訊裝置
11‧‧‧顯示裝置
12‧‧‧通訊裝置
13‧‧‧控制器
14‧‧‧儲存裝置
30‧‧‧遠端伺服器
31‧‧‧通訊裝置
32‧‧‧控制器
33‧‧‧儲存裝置
40‧‧‧網際網路
50‧‧‧無線存取點
60‧‧‧電信網路
410、420‧‧‧訊息
411、412、413、421、422、423‧‧‧訊息資料
S502、S504、S506、S508‧‧‧步驟
S702、S704、....、S714、S716‧‧‧步驟
801‧‧‧輸入框
802‧‧‧遠端輸入鍵盤
803‧‧‧本地端輸入鍵盤
S902、S904、S906‧‧‧步驟
S1002、S1004、S1006‧‧‧步驟
S1102、S1104、....、S1112、S1114‧‧‧步驟
第1圖係根據本揭露一實施例所述之虛擬行動基礎架構環境之示意圖。
第2圖係根據本揭露一實施例所述之行動通訊裝置之硬體架構示意圖。
第3圖係根據本揭露一實施例所述之遠端伺服器之硬體架構示意圖。
第4A圖係顯示本揭露一實施例之回應訊息410之格式示意
圖。
第4B圖係顯示本揭露一實施例之要求訊息之格式示意圖。
第5圖係顯示本揭露之輸入法切換方法一實施例之流程圖。
第6圖係根據本揭露另一實施例所述之VMI環境之示意圖。
第7圖係顯示本揭露之輸入法切換方法另一實施例之流程圖。
第8A圖至第8E圖係顯示根據本揭露實施例所述之輸入法切換的操作畫面示意圖。
第9圖係顯示本揭露之輸入法切換方法另一實施例之流程圖。
第10圖係顯示本揭露之輸入法切換方法另一實施例之流程圖,用以根據輸入框屬性自動切換成遠端輸入法。
第11圖係顯示本揭露之輸入訊號過濾與轉換方法一實施例之流程圖。
為讓本揭露之目的、特徵、和優點能更明顯易懂,特舉出下文實施例,並配合所附圖式,作詳細說明如下。注意的是,本章節所敘述的實施例目的在於說明本揭露之實施方式而非用以限定本揭露之保護範圍,任何熟悉此項技藝者,在不脫離本揭露之精神和範圍內,當可做些許更動與潤飾,因此本揭露之保護範圍當視後附之申請專利範圍所界定者為準。應理解下列實施例可經由軟體,硬體,韌體,或上述任意組合來實現。
本揭露實施例提供一種基於VMI架構之輸入法控制流程以及輸入法自動切換機制,可彈性於遠端(remote)輸入法與本地輸入法之間進行切換,兼顧使用者經驗與流暢度。此外,本揭露實施例更提供可橋接各式的ANDROID/iOS輸入法之輸入法
轉換器,使得使用者可自由變換喜歡或常用的本地端輸入法進行各項輸入作業,允許使用者自動切換本地輸入法,並且可基於根據輸入框屬性的考量,自動切換遠端輸入法或者可啟用安全模式使用遠端輸入法,藉此增加資料傳輸的安全性,可相較於現有VMI方法都有更好的效果,並有較高之資料安全性,有效降低重要資料被有心人士盜用/側錄的風險。
第1圖係根據本揭露一實施例所述之虛擬行動基礎架構(VMI)環境100之示意圖。VMI環境100包括一個或多個行動通訊裝置10、遠端伺服器30、網際網路40、無線存取點50、以及電信網路60,其中每個行動通訊裝置10包括運行一行動作業系統的行動裝置。舉例來說,行動通訊裝置10可為一具備網路通訊功能之運算裝置,如:筆記型電腦、智慧型手機、平板電腦或其他可攜式裝置或手持式裝置等,只要其可支援無線存取點50以及/或電信網路60所使用之無線技術。
其中,行動通訊裝置10係由用戶端的使用者所使用,並透過無線存取點50連接至網際網路40,而行動通訊裝置10亦可透過電信網路60連接至網際網路40。藉由連接至網際網路40,行動通訊裝置10可與遠端伺服器30進行VMI的各項操作,行動通訊裝置10可以與遠端伺服器30進行通信,以透過網際網路40存取在遠端伺服器30上運行的遠端行動作業系統。在一實施例中,行動通訊裝置10的行動作業系統可以與在遠端伺服器30上運行的對應的遠端行動作業系統相同,例如行動用戶端裝置10以及遠端伺服器30上各自包括運行ANDROID/iOS作業系統的智能電話或平板電腦。包括ANDROID/iOS作業系統的遠端行動作業系統
可包括多個遠端應用程式(也稱為“APP”)。行動用戶端裝置10的用戶就像遠端應用程式在行動用戶端裝置201上運行一樣,存取遠端ANDROID/iOS作業系統上的遠端應用程式。舉例來說,遠端ANDROID/iOS作業系統的螢幕圖像顯示在行動通訊裝置10。這在允許員工使用自己的個人行動用戶端裝置的工作場所特別有利。特別地,具有不同行動用戶端裝置201的員工可以在由其雇主擁有和管理的遠端行動作業系統上運行的遠端應用程式上工作。為便於說明,以下實施例中,在行動通訊裝置10上運行的ANDROID/iOS作業系統稱為“本地作業系統”,並且在遠端伺服器30上運行的ANDROID/iOS作業系統稱為”遠端作業系統”,但本揭露並不限於此。類似地,在遠端ANDROID/iOS作業系統上執行的應用程式稱為遠端應用程式(以下簡稱遠端APP),在用戶端的本地ANDROID/iOS作業系統上執行的應用程式稱為用戶端應用程式(以下簡稱用戶端APP)。使用者可透過用戶端APP在行動通訊裝置10上存取遠端ANDROID/iOS作業系統上執行的遠端APP。一實施例中,行動通訊裝置10的行動作業系統和相應的遠端行動作業系統可以是相同的行動作業系統。在其他實施例中,行動通訊裝置10的行動作業系統和相應的遠端行動作業系統可以是不同的行動作業系統。例如,行動通訊裝置10可以運行iOS作業系統,並且遠端伺服器30所運行的遠端行動作業系統可以是ANDROID作業系統,或者行動通訊裝置10運行ANDROID作業系統,而遠端行動作業系統是iOS作業系統。
無線存取點50可使用短距無線技術,例如:無線保真(Wireless Fidelity,WiFi)技術、藍牙技術、群蜂(Zigbee)
技術等,建立一無線區域網路,以提供無線通訊服務給行動通訊裝置10。無線存取點50可透過乙太網(Ethernet)纜線連接至有線區域網路,再透過有線區域網路連接至網際網路40,其功能通常係用以接收、暫存、以及傳送針對行動通訊裝置10之資料流量。一般來說,若無線存取點50所使用的短距無線技術為無線保真技術,則其平均具有20公尺(在有障礙物的地方,例如:牆壁、樓梯間、電梯等)到100公尺(在空曠開放的地方)不等的涵蓋範圍。
電信網路60可為全球行動通訊系統(Global System for Mobile communications,GSM)、通用封包無線服務(General Packet Radio Service,GPRS)系統、全球增強型數據傳輸(Enhanced Data rates for Global Evolution,EDGE)系統、寬頻分碼多工存取(Wideband Code Division Multiple Access,WCDMA)系統、分碼多工存取-2000(Code Division Multiple Access 2000,CDMA-2000)系統、分時同步分碼多工存取(Time Division-Synchronous Code Division Multiple Access,TD-SCDMA)系統、全球互通微波存取(Worldwide Interoperability for Microwave Access,WiMAX)系統、長期演進(Long Term Evolution,LTE)系統、以及分時長期演進(Time-Division LTE,TD-LTE)系統等,端視所使用的無線技術而定。其主要負責建立一無線廣域網路,以提供無線通訊服務給行動通訊裝置10。
第2圖係根據本揭露一實施例所述之行動通訊裝置10之硬體架構示意圖。如第2圖所示,行動通訊裝置10至少包括顯示裝置11、通訊裝置12、控制器13、以及儲存裝置14。
顯示裝置11可為液晶顯示器(Liquid Crystal
Display,LCD)、發光二極體(Light-Emitting Diode,LED)顯示器、或電子紙顯示器(Electronic Paper Display,EPD)等,用以顯示圖形化使用者介面。在另一實施例,顯示裝置11還可包括設置於其上或其下的一或多個觸碰偵測器,用以偵測導電物體(例如:手指、觸控筆)之接觸或靠近,以提供觸控方式之人機介面操作,使得顯示裝置11成為一具有觸碰偵測功能之顯示裝置。
通訊裝置12係用以提供網路連線至網際網路40,透過網際網路40可再連接至遠端伺服器30。通訊裝置12可依循至少一特定通訊技術提供無線區域/廣域網路連線,只要上述特定通訊技術係與電信網路60所使用的通訊技術相容。舉例來說,通訊裝置12可包含無線網路功能之射頻裝置、基頻裝置、及天線之組合。在另一實施例,通訊裝置12還可提供有線網路連線,例如,通訊裝置12可包含乙太網路卡。
控制器13可為通用處理器、微處理器、應用處器、或數位訊號處理器等,其可包括各式電路邏輯,用以提供數據處理及運算之功能、傳送畫面(包括:文字、圖像、影像)資料到顯示裝置11、控制通訊裝置12的運作以提供網路連線、以及從儲存裝置14讀取或儲存數據。特別是,控制器13係用以從儲存裝置14讀取應用之程式碼,以執行作業系統以及用戶端APP。此外,控制器13還用以協調控制顯示裝置11、通訊裝置12、以及儲存裝置14之運作,以於運行上述遠端伺服器之一第一應用程式時執行本揭露的輸入法切換方法。於一些實施例中,上述輸入法切換方法可包括以下步驟:顯示上述第一應用程式之一操作畫面於上述圖形化使用者介面;透過上述通訊裝置接收來自上述遠端伺服器
的表示一遠端輸入鍵盤已致能的一第一通知;相應於上述第一通知,執行一本地端輸入法之一啟動作業,透過上述顯示裝置在上述圖形化使用者介面上以一本地端輸入鍵盤遮蓋住顯示於本地端的上述遠端輸入鍵盤,讓一使用者使用上述本地端輸入法來進行輸入操作,並透過上述通訊裝置傳送上述使用者所輸入內容至上述遠端伺服器以將上述所輸入內容顯示於上述操作畫面的遠端對應顯示位置;以及透過上述通訊裝置接收來自上述遠端伺服器的表示上述遠端輸入鍵盤已經關閉的一第二通知,並相應於上述第二通知,執行上述本地端輸入法之一隱藏作業,透過上述顯示裝置在上述圖形化使用者介面上將上述本地端輸入鍵盤隱藏。
該領域之熟習技藝人士當可理解,控制器13中的電路邏輯通常可包括多個電晶體,用以控制該電路邏輯之運作以提供所需之功能及作業。更進一步的,電晶體的特定結構及其之間的連結關係通常是由編譯器所決定,例如:暫存器轉移語言編譯器可由處理器所運作,將類似組合語言碼的指令檔編譯成適用於設計或製造該電路邏輯所需之形式。
儲存裝置14為非暫態之電腦可讀取儲存媒體,例如:隨機存取記憶體、快閃記憶體,或硬碟、光碟,或上述媒體之任意組合,用以儲存指令集、應用及/或通訊協定之程式碼等。特別是,儲存裝置14還儲存有本揭露之方法的指令集或程式碼,由控制器13載入並執行。儲存裝置14儲存的程式碼通常包括作業系統、一或多個應用程式、模擬系統、或各種作業系統之任意一者的模擬應用程式以及/或模擬硬體平台、模擬作業系統等等之程式碼。於一些實施例中,這些元件是儲存於儲存裝置14中且由控
制器13所執行。舉例來說,儲存裝置14中可儲存有行動作業系統例如ANDROID/iOS作業系統或其他類似行動作業系統的程式碼,而控制器13可載入儲存裝置14中的行動作業系統的程式碼以運行行動作業系統並透過行動作業系統執行一或多個用戶端APP。
在一實施例中,儲存裝置14中可更儲存有一輸入法切換控制器的程式碼,而控制器13可載入儲存裝置14中的輸入法切換控制器的程式碼以運行輸入法切換控制器。當輸入法切換控制器被控制器13載入並執行時可用以執行本案之輸入法切換方法。
當可理解的是,第2圖所示之元件僅用以提供一說明之範例,並非用以限制本揭露之保護範圍。舉例來說,行動通訊裝置10還可包括一或多個按鈕、鍵盤、滑鼠、觸控板、電源供應器、麥克風、喇叭、以及/或全球定位系統儀等。
第3圖係根據本揭露一實施例所述之遠端伺服器之硬體架構示意圖。遠端伺服器30至少包括通訊裝置31、控制器32、以及儲存裝置33。
通訊裝置31係用以提供連線至網際網路40,透過網際網路40可再連接至行動通訊裝置10。通訊裝置31可依循至少一特定通訊技術提供有線或無線網路連線,例如:乙太網、無線區域網路、或無線廣域網路。舉例來說,通訊裝置31可包含有線網路功能之乙太網路卡、或無線網路功能之射頻裝置、基頻裝置、及天線之組合。
控制器32可為通用處理器、微處理器(Micro Control
Unit,MCU)、應用處理器(APPlication Processor,AP)、或數位訊號處理器(Digital Signal Processor,DSP)等,其可包括各式電路邏輯,用以提供數據處理及運算之功能、控制通訊裝置31的運作以提供網路連結、以及從儲存裝置33讀取或儲存數據。特別是,控制器32係用以協調控制通訊裝置31、以及儲存裝置33之運作,以執行本揭露的輸入法切換方法。
該領域之熟習技藝人士當可理解,控制器32中的電路邏輯通常可包括多個電晶體,用以控制該電路邏輯之運作以提供所需之功能及作業。更進一步的,電晶體的特定結構及其之間的連結關係通常是由編譯器所決定,例如:暫存器轉移語言(Register Transfer Language,RTL)編譯器可由處理器所運作,將類似組合語言碼的指令檔(script)編譯成適用於設計或製造該電路邏輯所需之形式。
儲存裝置33為非暫態(non-transitory)之電腦可讀取儲存媒體,例如:隨機存取記憶體(Random Access Memory,RAM)、快閃記憶體,或硬碟、光碟,或上述媒體之任意組合,用以儲存指令集、應用及/或通訊協定之程式碼等。特別是,儲存裝置33還儲存有本揭露之方法的指令集或程式碼,由控制器32載入並執行。儲存裝置33儲存的程式碼通常包括作業系統、一或多個應用程式、模擬系統、或各種作業系統之任意一者的模擬應用程式以及/或模擬硬體平台、模擬作業系統等等之程式碼。舉例來說,儲存裝置33中可儲存有行動作業系統例如ANDROID/iOS作業系統或其他類似行動作業系統的程式碼,而控制器32可載入儲存裝置33中的行動作業系統的程式碼以運行行動作業系統並透過行
動作業系統執行一或多個遠端APP。
當可理解的是,第3圖所示之元件僅用以提供一說明之範例,並非用以限制本揭露之保護範圍。舉例來說,在一些實施例中,遠端伺服器30還可包括一或多個按鈕、鍵盤、滑鼠、觸碰板、視訊鏡頭、麥克風、顯示螢幕(例如:液晶顯示器、發光二極體顯示器、或電子紙顯示器等)、以及/或喇叭等,用以作為人機介面與使用者互動。
在一實施例中,本案提供一種雙模輸入法的控制流程。在本揭露實施例中,所謂雙模輸入法係包括遠端伺服器30所提供的遠端輸入法與使用者所用的行動通訊裝置10(例如:手機)上的本地端輸入法,例如中英文輸入、手寫輸入、語音輸入、注音輸入法等,但本揭露並不限於此。一般而言,作業系統提供一輸入法,對應有一輸入法編輯器(IME),其允許一使用者透過IME所顯示的虛擬或觸碰鍵盤輸入文字。當使用者點擊一應用程式之輸入欄位或輸入框時,預先配置的虛擬鍵盤(也被稱為軟件鍵盤(software keyboard)或IME)會跳出顯示於顯示裝置(例如:觸控螢幕)上,然後使用者可以使用此虛擬鍵盤輸入內容至該應用程式之輸入欄位。以下稱遠端伺服器30所提供的輸入法或輸入法編輯器為遠端輸入法,其對應的虛擬鍵盤為遠端輸入鍵盤,而用戶端的行動通訊裝置10所提供的輸入法或輸入法編輯器為本地端輸入法,其對應的虛擬鍵盤為本地端輸入鍵盤。上述遠端輸入法提供一遠端輸入鍵盤以供使用者透過遠端作業系統進行輸入作業,上述本地端輸入法提供一本地端輸入鍵盤以供使用者透過本地端輸入鍵盤進行輸入作業。在一實施例中,行動通訊裝置10可利用本
地端作業系統的本地端輸入法輸入文字給對應的遠端作業系統。在一實施例中,遠端伺服器30可在行動通訊裝置10上顯示遠端作業系統的操作畫面以供使用者於本地端進行相關操作。注意的是,在本揭露書中,用戶端或本地端可交互使用,都是表示在行動通訊裝置10上的操作,而遠端則表示在遠端伺服器30上的操作。遠端與本地端可藉由一回應訊息以及一要求訊息進行訊息傳遞,其詳細格式與用法將介紹於下。
第4A圖係顯示本揭露一實施例之回應訊息410之格式示意圖。回應訊息410係由遠端傳送至本地端的訊息。如第4A圖所示,回應訊息410之格式至少包括狀態(STATE)411、屬性(ATTR)412、及訊息(MSG)413三個資料欄位。其中,狀態欄位411表示遠端輸入鍵盤的狀態,用以告知本地端關於遠端鍵盤係為致能(enable)或非致能(disable)。在一實施例中,狀態欄位411以數字”0”或”1”表示鍵盤狀態,當遠端輸入鍵盤為致能(跳起或開啟)時,狀態欄位的值為”1”,而當遠端輸入鍵盤為非致能(收起或關閉)時,狀態欄位的值為”0”。屬性欄位412表示輸入框屬性,用以告知本地端關於輸入框為一般框(normal)或加密框(encryption)的資訊,作為後續安全模式的判斷與輸入法切換的判斷依據。在一實施例中,屬性欄位412以數字”0”或”1”表示輸入框屬性,當輸入框為一般框時,屬性欄位的值為”0”,而當輸入框為加密框時,屬性欄位的值為”1”。
訊息欄位413表示目前開啟APP的識別資料例如APP名字、類型、版本編號等等,用以告知本地端關於遠端目前開啟APP的識別資料,作為後續橋接本地輸入法的依據。在一實施例
中,訊息欄位413可告知本地端關於目前開啟APP的名字、類型及版本編號等等識別資料。
詳細而言,遠端的一常駐程式可根據遠端作業系統回報的遠端輸入鍵盤的狀態、輸入框屬性及/或目前開啟APP的識別資料,產生對應的回應訊息並發送回應訊息至本地端。當本地端接收到來自遠端的回應訊息時,本地端可根據回應訊息中的狀態欄位的資料判斷出遠端輸入鍵盤是否為致能,根據屬性欄位的資料判斷出輸入框為一般框或加密框,根據訊息欄位的資料取得目前開啟APP的識別資料,再根據這些資料進行對應的處理。舉例來說,上述對應的處理包括於輸入框為加密框時,啟動安全模式,限制本地端輸入法之使用、於遠端輸入鍵盤為致能時,執行本地端輸入鍵盤啟動作業、於遠端輸入鍵盤為非致能或關閉時,執行本地端鍵盤隱藏作業及/或根據目前開啟APP的識別資料,產生轉換字串等等操作,但本揭露並不限於此。
第4B圖係顯示本揭露一實施例之要求訊息之格式示意圖。要求訊息係由本地端傳送至遠端的訊息。如第3B圖所示,要求訊息之格式至少包括鍵命令(KEYCOMMAND)、鍵碼(KEYCODE)、及鍵字串(KEYSTRING)三個資料欄位。其中,鍵命令欄位表示傳輸命令的類型,用以告知遠端關於此要求訊息所表示的命令類型,鍵碼欄位表示本地端使用者所輸入的鍵碼資料,鍵字串欄位則表示本地端使用者所輸入的字串資料。在一實施例中,鍵命令欄位可表示以下命令類型之其一:一輸入框高度命令TYPE_HEIGHT、一鍵碼命令TYPE_KEYCODE以一字串命令TYPE_STRING,但本揭露並不限於此。
舉例來說,當鍵命令欄位為”TYPE_HEIGHT”時,表示要求訊息為一輸入框高度命令,因此其後的鍵值欄位中包括輸入框的寬度與高度等資料;當鍵命令欄位為”TYPE_KEYCODE”時,表示要求訊息為一鍵碼命令,因此其後的鍵值欄位包括鍵碼資料;以及當鍵命令欄位為”TYPE_STRING”時,表示要求訊息為一字串命令,因此其後的鍵字串欄位中包括字串資料。在一實施例中,當要求訊息的鍵命令、鍵碼及鍵字串欄位分別為”TYPE_STRING”、” ”、”abc”時,遠端可據此解析出使用者輸入的字串為”abc”,因此可於遠端畫面的對應顯示位置顯示”abc”。可理解的是,在本實施例中,遠端可根據要求訊息的鍵命令欄位所表示的命令類型,來選擇鍵值欄位或鍵字串欄位的資料進行解析,未選取欄位的資料則可忽略。例如,當一要求訊息的鍵命令欄位的資料為”TYPE_STRING”時,遠端可僅解析出鍵字串欄位的資料,即便鍵碼欄位有一第一資料,遠端也可忽略該第一資料或不解析該第一資料。
詳細而言,用戶端APP可記錄使用者所選擇的本地端輸入法的類型、輸入的按鍵的鍵值或鍵字串,產生對應的要求訊息並發送要求訊息至遠端。當遠端接收到來自本地端的要求訊息時,遠端可根據要求訊息中的鍵命令欄位的資料判斷出要求訊息所表示的命令類型,並根據其命令類型,解析鍵值欄位或鍵字串欄位的資料以進行後續處理。舉例來說,當一要求訊息的鍵命令欄位為”TYPE_HEIGHT”時,遠端可據此解析出此要求訊息為輸入框高度命令,因此可於其後的鍵值欄位中取得輸入框的寬度與高度等資料;當鍵命令欄位為”TYPE_KEYCODE”時,遠端可據
此解析出此要求訊息為鍵碼命令,因此可於其後的鍵值欄位中取得鍵碼資料;以及當鍵命令欄位為”TYPE_STRING”時,遠端可據此解析出此要求訊息為字串命令,因此可於其後的鍵字串欄位中取得字串資料,但本揭露並不限於此。
第5圖顯示本揭露之輸入法切換方法一實施例之流程圖。請同時參照第1圖、第2圖與第5圖。依據本揭露實施例之輸入法切換方法可以適用於一行動通訊裝置,舉例來說,可適用於第1圖的行動通訊裝置10並由其控制器13加以執行。
在此實施例中,如第2圖所示,行動通訊裝置10包括一顯示裝置11、一通訊裝置12、一控制器13以及一儲存裝置14,其中顯示裝置11用以顯示供使用者與行動通訊裝置10進行人機互動的一圖形化使用者介面,通訊裝置12用以提供網路連線至VMI中的遠端伺服器30,儲存裝置14用以儲存電腦可讀取之多個指令或程式碼,控制器13係耦接至通訊裝置12及儲存裝置14,用以從儲存裝置14載入並執行上述指令或程式碼以於運行遠端伺服器30的一第一應用程式時執行依據本揭露實施例之輸入法切換方法。明確來說,當使用者運行遠端伺服器30的第一應用程式(遠端APP)時,行動通訊裝置10會顯示第一應用程式的一操作畫面於顯示裝置11的圖形化使用者介面。
當使用者欲於遠端操作畫面進行輸入操作(例如:點擊操作畫面上的輸入欄位或輸入框)而使得遠端輸入鍵盤跳起時,如步驟S502,遠端伺服器30上運行的遠端作業系統會發送表示遠端輸入法的遠端輸入鍵盤已致能的第一通知至行動通訊裝置10,使得行動通訊裝置10透過通訊裝置12接收來自遠端伺服器30
的表示一遠端輸入鍵盤已致能的第一通知。在一實施例中,遠端伺服器30可將第4A圖的回應訊息410中的狀態欄位411的值設為”1”以產生表示遠端輸入法的遠端輸入鍵盤已致能的上述第一通知。
接著,如步驟S504,行動通訊裝置10相應於上述第一通知,執行一本地端輸入法之一啟動作業,透過顯示裝置11在圖形化使用者介面上以本地端輸入法的本地端輸入鍵盤遮蓋住顯示於本地端的遠端輸入鍵盤,讓一使用者使用本地端輸入法來進行輸入操作,並透過通訊裝置12傳送使用者所輸入內容至遠端伺服器30以將所輸入內容顯示於操作畫面的遠端對應顯示位置。在一實施例中,行動通訊裝置10可將第4B圖的回應訊息420中的鍵命令欄位421設為”TYPE_STRING”並於其後的鍵字串欄位423中填入相應使用者內容的字串資料以傳送所輸入內容至遠端伺服器30。
在一些實施例中,假設本地端輸入法包括一第一輸入法時,行動通訊裝置10可相應於第一通知,透過通訊裝置12,發出一第一畫面調整通知至遠端伺服器30,其中第一畫面調整通知包括第一輸入法的第一輸入鍵盤的高度與寬度資訊,致使遠端伺服器30可以根據第一輸入鍵盤的高度與寬度資訊調整所顯示的鍵盤位置,以免顯示第一輸入鍵盤時蓋住部分輸入的內容。
之後,當使用者結束輸入作業而使得遠端輸入鍵盤關閉時,如步驟S506,遠端伺服器30上運行的遠端作業系統會發送表示遠端輸入鍵盤已關閉的一第二通知至行動通訊裝置10,使得行動通訊裝置10透過通訊裝置12接收來自遠端伺服器30的表示
遠端輸入鍵盤已經關閉的第二通知,並如步驟S508,相應於第二通知,執行本地端輸入法的一隱藏作業,透過顯示裝置11在圖形化使用者介面上將本地端輸入鍵盤隱藏。在一實施例中,遠端伺服器30可將第4A圖的回應訊息410中的狀態欄位411的值設為”0”以產生表示遠端輸入鍵盤已經關閉的上述第二通知。
第6圖係根據本揭露另一實施例所述之VMI環境之示意圖,用以進一步說明本揭露之輸入法切換方法實施細節。在第6圖所示的VMI環境中包括行動通訊裝置10以及遠端伺服器30,其中,遠端伺服器30中包括遠端作業系統、遠端輸入法以及常駐程式(Daemon)等軟體模組,行動通訊裝置10中包括用戶端APP以及本地端輸入法等軟體模組。在此實施例中,常駐程式係為包含串起整體VMI協定之協定之軟體模組,可由程式碼所組成並由控制器32載入執行於遠端伺服器30上。遠端作業系統以及遠端輸入法可由程式碼所組成並由控制器32載入執行於遠端伺服器30上。類似地,用戶端APP以及本地端輸入法可由程式碼所組成並由控制器32載入執行於行動通訊裝置10上。常駐程式可與用戶端APP可建立一連線以進行資料傳遞,可將遠端伺服器30的回應訊息傳送至行動通訊裝置10或接收來自行動通訊裝置10的要求訊息。用戶端APP也可透過建立的連線接收來自遠端伺服器30的回應訊息或將行動通訊裝置10的要求訊息傳送至遠端伺服器30。
第7圖顯示本揭露之輸入法切換方法另一實施例之流程圖。請同時參照第1圖、第2圖、第6圖與第7圖。依據本揭露實施例之輸入法切換方法可以適用於第6圖所述之VMI環境,可用於本地端(行動通訊裝置10)與遠端(遠端伺服器30)之間進行輸入
法的切換作業。
首先,當行動通訊裝置10的使用者欲於遠端畫面進行輸入操作而使得遠端輸入鍵盤跳起時,遠端作業系統透過遠端輸入法廣播(broadcast)一第一訊息通知常駐程式(步驟S702)。當常駐程式接收到遠端作業系統所送出的上述第一訊息時,常駐程式發送一回應訊息(response)給用戶端APP,以將第一通知傳送給行動通訊裝置10(步驟S704)。上述回應訊息包含表示遠端輸入鍵盤已致能(enable)或開啟(open)的資料,例如,將其狀態欄位的值設為”1”。在一些實施例中,常駐程式可同時通知遠端作業系統調整遠端(WebRTC)畫面,以使遠端輸入鍵盤不會遮蓋住遠端畫面上的顯示資料。具體來說,遠端輸入鍵盤會顯示在畫面上的固定位置,然而不同的APP會有不同的顯示方式,如果沒有適當地調整,遠端輸入法對應的遠端輸入鍵盤可能會遮蓋住遠端畫面上的部分顯示資料。因此,本案之輸入法控制方法可進一步根據遠端輸入法的鍵盤的寬度與高度資料調整原先的遠端畫面。例如,可根據遠端輸入法的鍵盤的寬度與高度資料動態調整原先的遠端畫面,當判斷出遠端輸入法的鍵盤可能會蓋住原先顯示的資料時,可以將原先的顯示畫面適當地往上移,以使遠端輸入法的鍵盤不會遮蓋住遠端畫面上的輸入資料。
相應於接收到遠端的常駐程式所送出的上述回應訊息,用戶端APP喚起本地端的第一輸入法,並以本地端的第一輸入法的第一輸入鍵盤蓋住遠端的第二輸入法的第二輸入鍵盤,讓使用者透過第一輸入鍵盤以第一輸入法進行文字輸入(步驟S706)。其中,第一輸入鍵盤包括第一輸入法對應的多個輸入虛擬
按鍵,使用者可藉由操作這些虛擬按鍵來進行文字輸入。舉例來說,假設第一輸入法為注音輸入法時,使用者可藉由按壓虛擬按鍵”ㄅ”、”ㄞ”及確認鍵(Enter key)來輸入字元”掰”。於一些實施例中,第一輸入法可為語音或手寫輸入法,第一輸入鍵盤則為對應的語音或手寫輸入介面,以允許使用者進行手寫或語音方式進行文字輸入。
接著,用戶端APP收集使用者輸入內容,將使用者輸入內容轉為對應字串,並根據轉換的字串產生對應的要求訊息傳送至常駐程式(步驟S708)。上述要求訊息包括鍵命令、鍵碼、及鍵字串三個資料欄位,如第4B圖所示。例如,當使用者利用第一輸入鍵盤按壓虛擬按鍵”ㄅ”、”ㄞ”及確認鍵(Enter key)輸入”掰”時,用戶端APP可分別收集使用者輸入的對應鍵盤位置”ㄅ”、”ㄞ”及確認鍵(Enter key)並根據這些鍵盤位置的組合產生字串”掰”,之後再據此產生一要求訊息給遠端常駐程式,其中要求訊息中的鍵命令欄位設為”TYPE_STRING”及鍵字串資料欄位設為”掰”。
當常駐程式接收到來自用戶端的要求訊息時,常駐程式解析接收到的要求訊息取得輸入內容,並將輸入內容傳送至遠端作業系統,致使遠端作業系統將輸入內容顯示至對應顯示的位置(步驟S710)。在步驟S710中,輸入內容可根據要求訊息中的鍵碼欄位以及鍵字串欄位的資料而得到。因此,遠端作業系統會在遠端的畫面上顯示”掰”這個字。
當使用者結束輸入操作時而使得遠端輸入鍵盤隱藏或關閉時,遠端作業系統廣播一第二訊息通知常駐程式(步驟S712)。當常駐程式接收到遠端作業系統所送出的上述第二訊息
時,常駐程式發送一回應訊息給用戶端APP,用以通知用戶端本地作業系統進行本地端輸入法的隱藏作業(步驟S714)。上述回應訊息包含表示鍵盤非致能(disable)或關閉(close)的資料,例如,將其狀態欄位的值設為”0”。相應於接收到遠端的常駐程式所送出的上述回應訊息,用戶端本地作業系統執行本地端輸入法的隱藏作業,隱藏本地端的第一輸入法,並收起畫面上本地端的第一輸入法的第一輸入鍵盤。
參見第8A圖至第8E圖,係顯示根據本揭露實施例所述之輸入法切換的操作畫面示意圖。如第8A圖,用戶端APP在本地作業系統的螢幕上顯示包括一文字輸入框801的遠端ANDROID作業系統的操作畫面圖像。如第8B圖所示,當使用者觸碰本地作業系統的螢幕上的文字輸入框時,觸碰事件被傳遞到遠端作業系統,使遠端作業系統自動喚起遠端輸入法以顯示遠端輸入鍵盤802且遠端作業系統廣播通知常駐程式。由於用戶端APP正在顯示遠端作業系統的操作畫面圖像,遠端輸入鍵盤會先顯示在本地作業系統的螢幕上。如第8C圖所示,常駐程式發送回應訊息通知客戶端APP進行本地端輸入法啟動作業,使得客戶端APP於接收到上述回應訊息時,自動喚起本地端輸入法,並以本地端輸入法的本地端輸入鍵盤803覆蓋在原先顯示在本地作業系統的螢幕的遠端輸入鍵盤上,讓使用者以本地端輸入鍵盤進行文字輸入。如第8D圖所示,使用者使用本地端輸入法的本地端輸入鍵盤將欲輸入的文字輸入到文字輸入框801中。客戶端APP從本地端輸入法接收文字輸入,並將文字輸入提供給常駐程式,以將輸入內容傳送至遠端作業系統,使得文字輸入被提供給遠端APP並且致使遠端作業
系統將輸入內容顯示至對應顯示的位置上。接著,使用者執行表示使用者輸入結束的動作。在此例中,使用者可透過觸碰本地作業系統的螢幕上的“傳送”按鈕來執行輸入結束的動作。客戶端APP向遠端作業系統通知使用者動作。相應於上述使用者操作,遠端作業系統關閉遠端輸入法而使得遠端作業系統上的遠端輸入鍵盤802關閉,並且遠端作業系統廣播一第二訊息通知常駐程式,透過常駐程式通知用戶端作業系統進行本地端輸入法的隱藏作業,因此本地端輸入鍵盤803也被收起,如第8E圖所示。
在一些實施例中,本案更提供支援多種本地端輸入法之間的彈性切換的輸入法切換方法。在一實施例中,假設本地端輸入法至少包括一第一輸入法(例如:注音輸入法)與一第二輸入法(例如:語音輸入法),當偵測到本地輸入法由第一輸入法切換為第二輸入法時,行動通訊裝置10可透過通訊裝置12,發出第二畫面調整通知至遠端伺服器30,其中第二畫面調整通知包括第二輸入法對應的一第二輸入鍵盤的高度與寬度資訊,致使遠端伺服器30可根據第二輸入鍵盤的高度與寬度資訊調整所顯示的鍵盤位置。第9圖顯示本揭露之輸入法切換方法另一實施例之流程圖。請同時參照第1圖、第2圖、第6圖與第9圖。依據本揭露實施例之輸入法切換方法可以適用於第6圖所述之VMI環境,可用於本地端(行動通訊裝置10)與遠端(遠端伺服器30)之間進行輸入法的切換作業。
如步驟S902,當本地端輸入法切換(例如:由第一輸入法切換為第二輸入法)時,用戶端APP發送要求訊息給遠端的常駐程式。當常駐程式收到用戶端APP傳送的要求訊息後,如步驟
S904,常駐程式通知遠端作業系統輸入法需重新調整。於是,如步驟S906,遠端作業系統根據要求訊息中的鍵值欄位的資料調整遠端輸入法高度、寬度等相關畫面。藉此,遠端作業系統可以根據不同本地端輸入法的鍵盤的寬度與高度資料動態調整原先的遠端畫面上的對應本地端輸入鍵盤位置,當判斷出切換後的本地端輸入法的本地端輸入鍵盤可能會蓋住原先顯示的資料時,可以將原先的顯示畫面適當地往上移,以使切換後的本地端輸入法的本地端輸入鍵盤不會遮蓋住遠端畫面上的輸入資料。
在一些實施例中,基於安全考量,當使用者需要輸入一些具有加密或安全性的資料例如密碼時,若仍採用本地輸入法,此時發送至遠端作業系統的是輸入鍵碼(key code),當鍵碼被攔截後可直接解碼,會有重要資料外洩的疑慮,因此本案之輸入法切換機制可進一步考量輸入框屬性自動切換成遠端輸入法。在一實施例中,行動通訊裝置10可接收來自遠端伺服器30的包括一輸入框屬性資料的一第三通知,並且相應於輸入框屬性資料,選擇執行本地端輸入法之啟動作業或隱藏作業,以顯示或隱藏本地端輸入鍵盤。輸入框的屬性可分為一般框與加密框兩種屬性。相應於輸入框屬性資料表示一加密輸入框,行動通訊裝置10執行本地端輸入法之隱藏作業,以透過顯示裝置11在圖形化使用者介面上將本地端輸入鍵盤隱藏並顯示遠端輸入鍵盤,讓使用者使用遠端輸入法進行輸入操作。明確來說,遠端(即:遠端伺服器30)可傳送關於輸入框的屬性資料至本地端(即:行動通訊裝置10),輸入框的屬性可分為一般框與加密框兩種屬性,分別以數字”0”與”1”表示,而當本地端接收到關於輸入框的屬性資料時,可根據
其數值判斷是否為一加密框。在此實施例中,加密框以數字”1”表示,也就是說,當本地端接收到其值為”1”的關於輸入框的屬性資料時,判定此輸入框為加密框,自動啟用安全模式使用遠端輸入鍵盤進行輸入。當本地端接收到其值為”0”的關於輸入框的屬性資料時,判定此輸入框為一般框,無須切換使用遠端輸入法,繼續透過本地輸入法鍵盤以本地輸入法進行輸入。
第10圖顯示本揭露之輸入法切換方法另一實施例之流程圖,用以根據輸入框屬性自動切換成遠端輸入法。請同時參照第1圖、第2圖、第6圖與第10圖。依據本揭露實施例之輸入法切換方法可以適用於第6圖所述之VMI環境,可用於本地端(行動通訊裝置10)與遠端(遠端伺服器30)之間進行輸入法的切換作業。
接著,如步驟S1002,遠端作業系統廣播通知常駐程式輸入框屬性。如步驟S1004,常駐程式發送回應訊息給用戶端APP。在此實施例中,假設輸入框為一加密框,因此常駐程式將回應訊息中的屬性資料設為”1”。當用戶端APP接收到其值為”1”的關於輸入框的屬性資料時,判定此輸入框為加密框,因此,如步驟S1006,用戶端APP隱藏本地端輸入法,收起本地端輸入鍵盤並顯示遠端輸入鍵盤,讓使用者重新以遠端輸入法輸入。此時,發送至遠端作業系統的不再是按鍵的鍵值或字串,而是表示按鍵觸碰位置的觸碰事件(touch event),再配合動態鍵盤設計,即便傳送過程中被攔截直接解碼也無法得知正確的輸入內容,可降低密碼或其他重要個資被盜用/側錄的風險,從而提升資料安全性。
在另一實施例中,本案之輸入法切換機制可讓使用者自行決定是否啟用一安全模式,在安全模式下限制只能使用遠
端輸入法。舉例來說,在一實施例中,本案之輸入法切換機制可提供一選項,允許使用者在初始化前功能選取方式啟用安全模式。在此實施例中,當使用者啟用安全模式時,遠端伺服器30透過同應訊息產生表示安全模式已啟用的選項資料的一第四通知給行動通訊裝置10。當行動通訊裝置10接收來自遠端伺服器30的第四通知時,相應於選項資料,知道安全模式已啟用,執行本地端輸入法之隱藏作業,以透過顯示裝置11在圖形化使用者介面上將本地端輸入鍵盤隱藏並顯示遠端輸入鍵盤,讓使用者使用遠端輸入法進行輸入操作。當安全模式啟用時,將強制使用遠端輸入鍵盤,此時發送至遠端系統的不再是按鍵的鍵值,而是包括鍵盤的相應觸碰位置的觸碰事件,配合動態鍵盤設計即可達成加密需求,實現更高層次的加密設計。
在一些實施例中,由於某些版本的本地端輸入法會產生多餘的按鍵事件,本案更提供一種過濾鍵值的方法實施例,以判別唯一碼(Unicode)的方式予以剔除。上述特定的唯一碼為對應所選取本地輸入法的一組預先定義的唯一碼組合。舉例來說,以注音為例,預先定義的唯一碼組合可為表示注音符號”ㄅ”、”ㄆ”、”ㄇ”...~”ㄧ”、”ㄨ”、”ㄩ”的37個注音符號的唯一碼(”\u3105”~”\u3129”)以及表示注音符號聲調符號的唯一碼(例如:二聲(ˊ)的唯一碼為”\u02CA”、三聲(ˇ)的唯一碼為”\u02C7”、四聲(ˋ)的唯一碼為”\u02CB”或輕聲(˙)的唯一碼為”\u02D9”)。當輸入訊號的對應唯一碼屬於預先定義的唯一碼組合的其一時,此輸入訊號將會被過濾掉。換句話說,該輸入訊號將不會被封裝成輸出字串。因此,透過判別唯一碼可將多餘的注
音事件予以剃除。
另一方面,相同APP在不同作業系統(例如:ANDROID作業系統)版本時,對同樣的操作行為可能會有不同的實現方式與作法,例如Google Play在ANDROID版本編號5(ANDROID-5)時的搜尋操作,相對應的鍵碼(key code)是輸入鍵(Enter),然而在ANDROID版本編號7(ANDROID-7)時的搜尋操作,相對應的鍵碼是換行鍵。
因此,為了解決上述問題,本案一實施例更可提供一輸入法轉換器(Input method converter),用以額外判別輸入訊號的唯一碼與所屬APP版本,根據唯一碼過濾多餘的按鍵事件,並根據APP版本差異,針對其特定行為轉換為特定的鍵碼,以對應至正確的操作行為。明確來說,輸入法轉換器為儲存於儲存裝置14的一APP,當其被控制器13載入且執行時,用以在本地端切換輸入法時偵測所有按鍵訊號並攔截輸入中間過程的多餘按鍵訊號,只傳送最後的”文字”到遠端。例如,使用者在本地端想要輸入”掰”這個字時,會先輸入”ㄅ”、”ㄞ”等再經過選字才會輸入”掰”,而輸入法轉換器會過濾中間的鍵值”ㄅ”、”ㄞ”,只會送出最後的”掰”到遠端。另外,輸入法轉換器也可根據使用的作業系統的版本傳送對應的一個轉換鍵碼或轉換鍵值到遠端,使得遠端作業系統可以正確地執行遠端APP的各項操作。而控制器13更用以從儲存裝置14載入並執行指令或程式碼,以運行前述輸入法轉換器。
在一實施例中,行動通訊裝置10可透過輸入法轉換器,接收本地端的第一輸入法或第二輸入法的第一輸入訊號並且
將第一輸入訊號轉換為對應於遠端輸入法的第二輸入訊號並傳送第二輸入訊號至遠端伺服器30。在另一實施例中,行動通訊裝置10可透過輸入法轉換器,判別第一輸入訊號是否為一特定識別資料(例如:預先定義的唯一碼組合中的任一者)並於判定第一輸入訊號為特定識別資料時,移除第一輸入訊號。上述特定的鍵碼又稱為一轉換鍵碼。在又一實施例中,行動通訊裝置10可透過輸入法轉換器,判別目前在執行的第一應用程式是否為一特定應用(APP),並且相應於判定第一應用程式為特定應用時,轉換輸入訊號之鍵值得到一轉換鍵值並傳送轉換鍵值至遠端伺服器30。舉例來說,當欲執行Google Play在ANDROID版本編號5時的搜尋操作時,轉換鍵碼設為輸入鍵(Enter)的鍵碼,而當欲執行Google Play在ANDROID版本編號7時的搜尋操作時,轉換鍵碼則設為換行鍵的鍵碼。透過本案之輸入法轉換器對不同的情況做處理,便可橋接多種ANDROID/iOS輸入法。
第11圖顯示本揭露之輸入訊號過濾與轉換方法一實施例之流程圖。請同時參照第1圖、第2圖、第6圖與第11圖。依據本揭露實施例之輸入訊號過濾與轉換方法可以適用於第6圖所述之VMI環境,並且可於輸入法轉換器被控制器13載入且執行時於本地端(行動通訊裝置10)進行輸入訊號的過濾與轉換作業。
首先,輸入法轉換器接收用戶端各式本地端輸入法的輸入訊號(步驟S1102),並判斷接收到的輸入訊號的唯一碼是否為既定的特定唯一碼(步驟S1104)。舉例來說,於一實施例中,判斷輸入訊號的唯一碼是否為既定的特定唯一碼係判斷輸入訊號的唯一碼是否為”\u3105”~”\u3129”、”\u02CA”、”\u02C7”、”\u02CB”
以及”\u02D9”的唯一碼組合中的任一者,但本揭露並不限於此。當輸入訊號的唯一碼為一特定唯一碼時(步驟S1104的是)(例如:輸入訊號的唯一碼為”\u3105”),表示其為輸入中間過程的輸入訊號,輸入法轉換器攔截此特定唯一碼,丟掉此特定唯一碼,使得最終的字串中不會有此特定唯一碼對應的輸入訊號(步驟S1106)。輸入法轉換器攔截並丟掉特定唯一碼之後,重新回到步驟S1102,繼續接收下一個輸入訊號並進行唯一碼的判斷。
當輸入訊號的唯一碼並非特定唯一碼時(步驟S1104的否),(例如:輸入訊號的唯一碼為”\u3130”),接著判斷目前APP是否為特定APP(步驟S1108)。舉例來說,判斷目前APP是否為特定APP係為判斷目前APP是否為預先定義的具有版本差異而需進行鍵值轉換的一組APP中的任一者例如上述的Google Play。
當判定目前APP為特定APP時(步驟S1108的是)(例如:目前APP為Google Play),輸入法轉換器攔截特定APP的一組特定鍵碼,並根據使用的作業系統的版本資訊,將特定鍵碼轉換為一對應的轉換鍵碼(步驟S1110)(例如:當欲執行Google Play在ANDROID版本編號7時的搜尋操作時,轉換鍵碼設為換行鍵的鍵碼),接著執行步驟S1112。
當判定目前APP非為特定APP時(步驟S1108的否)(例如:目前APP為Google Play以外的APP),表示其為最後的選字結果,輸入法轉換器將輸入訊號封裝轉送至遠端(步驟S1112)。接著,輸入法轉換器判斷使用者是否結束輸入作業(步驟S1114)。在一實施例中,輸入法轉換器判斷使用者是否結束輸入作業係判斷使用者是否觸發特定的按鍵事件,例如,使用者是否連續按下兩
次輸入鍵或是否按下指定的按鍵。當使用者連續按下兩次輸入鍵或按下指定的結束輸入按鍵時,特定的按鍵事件被觸發,於是判定使用者已結束輸入作業。當輸入法轉換器判定使用者已結束輸入作業時(步驟S1114的是),整個流程結束。當輸入法轉換器判定使用者的輸入作業尚未結束時(步驟S1114的否),返回步驟S1102,並重覆繼續後續是否有特定唯一碼及/或特定APP的判斷及攔截及/或轉送轉換唯一碼,直到判定使用者已結束輸入作業。藉由本揭露之輸入法轉換器與唯一碼判斷機制,可輕易地橋接本地端所支援的各種ANDROID/iOS輸入法,攔截各輸入法的組字過程中的不必要輸入訊號,因此可支援各式的輸入法,例如注音輸入法、倉頡輸入法、語音輸入法、手寫輸入法等等。
因此,依據本揭露之基於VMI之行動通訊裝置及其相關輸入法切換方法,可提供本地端輸入法與遠端伺服器之間的雙模輸入法控制流程以及自動切換機制,可兼顧使用者經驗與流暢度。此外,依據本揭露之基於VMI之行動通訊裝置及其相關輸入法切換方法可橋接各式的本地端輸入法,使得使用者可自由變換喜歡或常用的本地端輸入法進行各項輸入作業,允許使用者自動切換本地輸入法,並且可根據輸入框屬性,自動強制切換為遠端輸入法或者可啟用安全模式使用遠端輸入法,藉此增加資料傳輸的安全性,可相較於現有VMI方法都有更好的效果,並有較高之資料安全性,從而有效降低重要資料被有心人士盜用/側錄的風險。
本揭露之方法,或特定型態或其部份,可以以程式碼的型態存在。程式碼可以包含於實體媒體,如軟碟、光碟片、
硬碟、或是任何其他機器可讀取(如電腦可讀取)儲存媒體,亦或不限於外在形式之電腦程式產品,其中,當程式碼被機器,如電腦載入且執行時,此機器變成用以參與本揭露之裝置。程式碼也可透過一些傳送媒體,如電線或電纜、光纖、或是任何傳輸型態進行傳送,其中,當程式碼被機器,如電腦接收、載入且執行時,此機器變成用以參與本揭露之裝置。當在一般用途影像處理器實作時,程式碼結合影像處理器提供一操作類似於應用特定邏輯電路之獨特裝置。
此外,多種說明性之邏輯區塊、模組、及電路以及在此所揭露之各種情況可實施在積體電路(Integrated Circuit,IC)、存取終端、存取點;或由積體電路、存取終端、存取點執行。積體電路可由一般用途處理器、數位信號處理器(Digital Signal Processor,DSP)、特定應用積體電路(Application Specific Integrated Circuit,ASIC)、現場可編程閘列(Field Programmable Gate Array,FPGA)或其他可編程邏輯裝置、離散閘(discrete gate)或電晶體邏輯(transistor logic)、離散硬體元件、電子元件、光學元件、機械元件、或任何以上之組合之設計以完成在此文內描述之功能;並可能執行存在於積體電路內、積體電路外、或兩者皆有之執行碼或指令。一般用途處理器可能是微處理器,但也可能是任何常規處理器、控制器、微控制器、或狀態機。處理器可由電腦設備之組合所構成,例如:數位訊號處理器及一微電腦之組合、多組微電腦、一組至多組微電腦以及一數位訊號處理器核心、或任何其他類似之配置。
雖然本揭露已以一些實施例揭露如上,然其並非用
以限定本揭露,任何所屬技術領域中包括通常知識者,在不脫離本揭露之精神和範圍內,當可作些許之更動與潤飾。舉例來說,本揭露實施例所述之系統以及方法可以硬體、軟體或硬體以及軟體的組合的實體實施例加以實現。因此本揭露之保護範圍當視後附之申請專利範圍所界定者為準。
Claims (20)
- 一種基於虛擬化行動架構之行動通訊裝置,包括:一顯示裝置,用以顯示一圖形化使用者介面;一通訊裝置,用以提供網路連線至一遠端伺服器;一儲存裝置,用以儲存電腦可讀取之多個指令或程式碼;以及一控制器,耦接至上述通訊裝置及上述儲存裝置,用以從上述儲存裝置載入並執行上述指令或程式碼以於運行上述遠端伺服器之一第一應用程式時執行以下輸入法切換方法:顯示上述第一應用程式之一操作畫面於上述圖形化使用者介面;透過上述通訊裝置接收來自上述遠端伺服器的表示一遠端輸入法之一遠端輸入鍵盤已致能的一第一通知;相應於上述第一通知,執行一本地端輸入法之一啟動作業,透過上述顯示裝置在上述圖形化使用者介面上以一本地端輸入鍵盤遮蓋住顯示於本地端的上述遠端輸入鍵盤,讓一使用者使用上述本地輸入法來進行輸入操作,並透過上述通訊裝置傳送上述使用者所輸入內容至上述遠端伺服器以將上述所輸入內容顯示於上述操作畫面的遠端對應顯示位置;以及透過上述通訊裝置接收來自上述遠端伺服器的表示上述遠端輸入鍵盤已經關閉的一第二通知,並相應於上述第二通知,執行上述本地端輸入法之一隱藏作業,透過上述顯示裝置在上述圖形化使用者介面上將上述本地端輸入鍵盤隱藏。
- 如申請專利範圍第1項所述之行動通訊裝置,其中上述本地端輸入法包括一第一輸入法且上述輸入法切換方法更包括:相應於上述第一通知,透過上述通訊裝置,發出一第一畫面調整通知至上述遠端伺服器,其中上述第一畫面調整通知包括上述第一輸入法之一第一輸入鍵盤的高度與寬度資訊,致使上述遠端伺服器根據上述第一輸入鍵盤的高度與寬度資訊調整所顯示的鍵盤位置。
- 如申請專利範圍第2項所述之行動通訊裝置,其中上述本地端輸入法更包括一第二輸入法且上述輸入法切換方法更包括:偵測到上述本地輸入法由上述第一輸入法切換為上述第二輸入法;以及透過上述通訊裝置,發出一第二畫面調整通知至上述遠端伺服器,其中上述第二畫面調整通知包括上述第二輸入法之一第二輸入鍵盤的高度與寬度資訊,致使上述遠端伺服器根據上述第二輸入鍵盤的高度與寬度資訊調整所顯示的鍵盤位置。
- 如申請專利範圍第3項所述之行動通訊裝置,其中,上述控制器更用以從上述儲存裝置載入並執行上述指令或程式碼以運行一輸入法轉換器且上述輸入法切換方法更包括:透過上述輸入法轉換器,接收上述第一輸入法或上述第二輸入法之第一輸入訊號;將上述第一輸入訊號轉換為對應於上述遠端輸入法之第二輸入訊號;以及傳送上述第二輸入訊號至上述遠端伺服器。
- 如申請專利範圍第4項所述之行動通訊裝置,其中上述第一輸入法以及上述第二輸入法包括語音輸入法、手寫輸入法、注音輸入法以及倉頡輸入法。
- 如申請專利範圍第4項所述之行動通訊裝置,其中上述輸入法切換方法更包括:透過上述輸入法轉換器,判別上述第一輸入訊號是否為一特定識別資料;以及透過上述輸入法轉換器,於判定上述第一輸入訊號為上述特定識別資料時,移除上述第一輸入訊號。
- 如申請專利範圍第6項所述之行動通訊裝置,其中上述輸入法切換方法更包括:透過上述輸入法轉換器,判別上述第一應用程式是否為一特定應用;以及相應於判定上述第一應用程式為上述特定應用時,轉換上述第一輸入訊號之鍵值得到一轉換鍵值並傳送上述轉換鍵值至上述遠端伺服器。
- 如申請專利範圍第1項所述之行動通訊裝置,其中上述輸入法切換方法更包括:接收來自上述遠端伺服器之一第三通知,其中上述第三通知包括一輸入框屬性資料;以及相應於上述輸入框屬性資料,選擇執行上述本地端輸入法之上述啟動作業或上述隱藏作業。
- 如申請專利範圍第8項所述之行動通訊裝置,其中上述輸入法切換方法更包括:相應於上述輸入框屬性資料表示一加密輸入框,執行上述本地端輸入法之上述隱藏作業,以透過上述顯示裝置在上述圖形化使用者介面上將上述本地端輸入鍵盤隱藏並顯示上述遠端輸入鍵盤,讓上述使用者使用上述遠端輸入法進行輸入操作。
- 如申請專利範圍第8項所述之行動通訊裝置,其中上述輸入法切換方法更包括:接收來自上述遠端伺服器之一第四通知,其中上述第四通知包括一選項資料;相應於上述選項資料,執行上述本地端輸入法之上述隱藏作業,以透過上述顯示裝置在上述圖形化使用者介面上將上述本地端輸入鍵盤隱藏並顯示上述遠端輸入鍵盤,讓上述使用者使用上述遠端輸入法進行輸入操作。
- 一種輸入法切換方法,適用於一基於虛擬行動架構的一行動通訊裝置,上述行動通訊裝置網路連線至一遠端伺服器,包括下列步驟:顯示上述遠端伺服器之一第一應用程式之一操作畫面於一圖形化使用者介面;接收來自上述遠端伺服器的表示一遠端輸入法之一遠端輸入鍵盤已致能的一第一通知;相應於上述第一通知,執行一本地端輸入法之一啟動作業,在上述圖形化使用者介面上以一本地端輸入鍵盤遮蓋住顯示於本地端的上述遠端輸入鍵盤,讓一使用者使用上述本地輸入法來進行輸入操作,並透過網路傳送上述使用者所輸入內容至上述遠端伺服器以將上述所輸入內容顯示於上述操作畫面的遠端對應顯示位置;以及接收來自上述遠端伺服器的表示上述遠端輸入鍵盤已經關閉的一第二通知,並相應於上述第二通知,執行上述本地端輸入法之一隱藏作業,以在上述圖形化使用者介面上將上述本地端輸入鍵盤隱藏。
- 如申請專利範圍第11項所述之輸入法切換方法,其中上述本地端輸入法包括一第一輸入法且上述輸入法切換方法更包括:相應於上述第一通知,發出一第一畫面調整通知至上述遠端伺服器,其中上述第一畫面調整通知包括上述第一輸入法之一第一輸入鍵盤的高度與寬度資訊,致使上述遠端伺服器根據上述第一輸入鍵盤的高度與寬度資訊調整所顯示的鍵盤位置。
- 如申請專利範圍第12項所述之輸入法切換方法,其中上述本地端輸入法更包括一第二輸入法且上述輸入法切換方法更包括:偵測到上述本地輸入法由上述第一輸入法切換為上述第二輸入法;以及發出一第二畫面調整通知至上述遠端伺服器,其中上述第二畫面調整通知包括上述第二輸入法之一第二輸入鍵盤的高度與寬度資訊,致使上述遠端伺服器根據上述第二輸入鍵盤的高度與寬度資訊調整所顯示的鍵盤位置。
- 如申請專利範圍第13項所述之輸入法切換方法,更包括:提供一輸入法轉換器;透過上述輸入法轉換器,接收上述第一輸入法或上述第二輸入法之第一輸入訊號;將上述第一輸入訊號轉換為對應於上述遠端輸入法之第二輸入訊號;以及傳送上述第二輸入訊號至上述遠端伺服器。
- 如申請專利範圍第14項所述之輸入法切換方法,其中上述第一輸入法以及上述第二輸入法包括語音輸入法、手寫輸入法、注音輸入法以及倉頡輸入法。
- 如申請專利範圍第14項所述之輸入法切換方法,更包括:透過上述輸入法轉換器,判別上述第一輸入訊號是否為一特定識別資料;以及透過上述輸入法轉換器,於判定上述第一輸入訊號為上述特定識別資料時,移除上述第一輸入訊號。
- 如申請專利範圍第16項所述之輸入法切換方法,更包括:透過上述輸入法轉換器,判別上述第一應用程式是否為一特定應用;以及相應於判定上述第一應用程式為上述特定應用時,轉換上述第一輸入訊號之鍵值得到一轉換鍵值並傳送上述轉換鍵值至上述遠端伺服器。
- 如申請專利範圍第11項所述之輸入法切換方法,更包括:接收來自上述遠端伺服器之一第三通知,其中上述第三通知包括一輸入框屬性資料;以及相應於上述輸入框屬性資料,選擇執行上述本地端輸入法之上述啟動作業或上述隱藏作業。
- 如申請專利範圍第18項所述之輸入法切換方法,更包括:相應於上述輸入框屬性資料表示一加密輸入框,執行上述本地端輸入法之上述隱藏作業,以透過上述顯示裝置在上述圖形化使用者介面上將上述本地端輸入鍵盤隱藏並顯示上述遠端輸入鍵盤,讓上述使用者使用上述遠端輸入法進行輸入操作。
- 如申請專利範圍第18項所述之輸入法切換方法,更包括:接收來自上述遠端伺服器之一第四通知,其中上述第四通知包括一選項資料;以及相應於上述選項資料,執行上述本地端輸入法之上述隱藏作業,以透過上述顯示裝置在上述圖形化使用者介面上將上述本地端輸入鍵盤隱藏並顯示上述遠端輸入鍵盤,讓上述使用者使用上述遠端輸入法進行輸入操作。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106139305A TWI658401B (zh) | 2017-11-14 | 2017-11-14 | 基於虛擬化行動架構之行動通訊裝置及其相關輸入法切換方法 |
CN201711293216.1A CN109783165B (zh) | 2017-11-14 | 2017-12-08 | 基于虚拟化移动架构的移动通信装置及其输入法切换方法 |
US15/855,929 US10628614B2 (en) | 2017-11-14 | 2017-12-27 | Mobile communication device based on virtual mobile infrastructure and related input method switching method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106139305A TWI658401B (zh) | 2017-11-14 | 2017-11-14 | 基於虛擬化行動架構之行動通訊裝置及其相關輸入法切換方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI658401B true TWI658401B (zh) | 2019-05-01 |
TW201918864A TW201918864A (zh) | 2019-05-16 |
Family
ID=66432225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106139305A TWI658401B (zh) | 2017-11-14 | 2017-11-14 | 基於虛擬化行動架構之行動通訊裝置及其相關輸入法切換方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10628614B2 (zh) |
CN (1) | CN109783165B (zh) |
TW (1) | TWI658401B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10809915B2 (en) * | 2019-02-15 | 2020-10-20 | Trend Micro Incorporated | Automatic credential input to a user interface of a remote mobile app |
CN112328094A (zh) * | 2020-11-03 | 2021-02-05 | 北京字节跳动网络技术有限公司 | 信息输入方法、云端输入法系统和客户端 |
CN113918227A (zh) * | 2021-09-10 | 2022-01-11 | 北京鲸鲮信息系统技术有限公司 | 输入法设置方法及其装置、输入方法及电子设备 |
CN114895824A (zh) * | 2022-05-12 | 2022-08-12 | 阿里巴巴(中国)有限公司 | 应用窗口的处理方法、终端设备、服务器和存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW477956B (en) * | 1997-04-02 | 2002-03-01 | Microsoft Corp | Method for integrating a virtual machine with input method editors |
CN101754466A (zh) * | 2008-12-10 | 2010-06-23 | 运软网络科技(上海)有限公司 | 移动虚拟化的基础设施以及基础平台 |
CN102427448A (zh) * | 2011-11-03 | 2012-04-25 | 中兴通讯股份有限公司 | 在虚拟桌面中使用客户端输入法的方法、终端及服务端 |
CN102594992A (zh) * | 2009-12-31 | 2012-07-18 | 联想(北京)有限公司 | 一种终端键盘的切换方法及移动终端 |
CN102834819A (zh) * | 2009-11-27 | 2012-12-19 | 谷歌公司 | 客户端-服务器输入法编辑器体系结构 |
US20140289637A1 (en) * | 2013-03-21 | 2014-09-25 | Nec Laboratories America, Inc. | Remote Visualization and Control for Virtual Mobile Infrastructure |
US9225799B1 (en) * | 2013-05-21 | 2015-12-29 | Trend Micro Incorporated | Client-side rendering for virtual mobile infrastructure |
CN106295379A (zh) * | 2016-08-30 | 2017-01-04 | 北京奇虎科技有限公司 | 加密输入法和装置、解密输入法和装置及相关设备 |
CN107077379A (zh) * | 2016-04-25 | 2017-08-18 | 深圳前海达闼云端智能科技有限公司 | 一种虚拟机创建方法和装置 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1818844B1 (de) | 2006-02-10 | 2013-03-13 | Secunet Security Networks Aktiengesellschaft | Verfahren zur Benutzung von Sicherheitstoken |
CN101510157B (zh) * | 2008-09-03 | 2011-11-30 | 北京搜狗科技发展有限公司 | 一种输入法安装方法及装置 |
TWI360762B (en) | 2008-09-05 | 2012-03-21 | Mitake Information Corp | On-screen virtual keyboard system |
US20110276625A1 (en) | 2010-05-06 | 2011-11-10 | Hemal Shah | Method and system for host independent keyboard, video, and mouse (kvm) redirection |
US9400585B2 (en) * | 2010-10-05 | 2016-07-26 | Citrix Systems, Inc. | Display management for native user experiences |
TWI560553B (en) | 2012-04-25 | 2016-12-01 | Awind Inc | Remote inputting method for image and audio sharing system and application program for the same |
CN102968190B (zh) * | 2012-10-24 | 2016-03-23 | 深圳市深信服电子科技有限公司 | 基于远程应用的本地输入法映射装置及方法 |
US9396002B2 (en) | 2013-01-18 | 2016-07-19 | Dell Products, Lp | Synchronizing a cursor from a managed system with a cursor from a remote system |
US9444912B1 (en) * | 2013-05-21 | 2016-09-13 | Trend Micro Incorporated | Virtual mobile infrastructure for mobile devices |
US9300720B1 (en) * | 2013-05-21 | 2016-03-29 | Trend Micro Incorporated | Systems and methods for providing user inputs to remote mobile operating systems |
US9063636B2 (en) | 2013-06-10 | 2015-06-23 | International Business Machines Corporation | Management of input methods |
CN104281950A (zh) | 2013-07-11 | 2015-01-14 | 腾讯科技(深圳)有限公司 | 提高电子支付安全性的方法及装置 |
CN104461272A (zh) * | 2013-09-18 | 2015-03-25 | 华为技术有限公司 | 虚拟键盘处理方法及装置 |
CN103546715A (zh) * | 2013-10-30 | 2014-01-29 | 乐视致新电子科技(天津)有限公司 | 一种智能电视的画面比例调节方法及装置 |
CN104852940A (zh) * | 2014-02-18 | 2015-08-19 | 宋菏生 | 一种远程桌面操作控制方法、装置及智能设备 |
CN104898965A (zh) | 2014-03-05 | 2015-09-09 | 网路家庭国际资讯股份有限公司 | 虚拟键盘系统及其显示方法 |
CN106802762B (zh) * | 2015-11-26 | 2020-09-11 | 思杰系统有限公司 | 在虚拟会话中同步服务器侧键盘布局与客户端侧布局 |
CN105426111A (zh) * | 2015-12-25 | 2016-03-23 | 中国电建集团贵阳勘测设计研究院有限公司 | 一种浮动软键盘的控制系统及其方法 |
CN106959811A (zh) * | 2016-01-11 | 2017-07-18 | 中兴通讯股份有限公司 | 一种在移动终端上输入信息的方法及装置 |
US10126945B2 (en) * | 2016-06-10 | 2018-11-13 | Apple Inc. | Providing a remote keyboard service |
-
2017
- 2017-11-14 TW TW106139305A patent/TWI658401B/zh active
- 2017-12-08 CN CN201711293216.1A patent/CN109783165B/zh active Active
- 2017-12-27 US US15/855,929 patent/US10628614B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW477956B (en) * | 1997-04-02 | 2002-03-01 | Microsoft Corp | Method for integrating a virtual machine with input method editors |
CN101754466A (zh) * | 2008-12-10 | 2010-06-23 | 运软网络科技(上海)有限公司 | 移动虚拟化的基础设施以及基础平台 |
CN102834819A (zh) * | 2009-11-27 | 2012-12-19 | 谷歌公司 | 客户端-服务器输入法编辑器体系结构 |
CN102594992A (zh) * | 2009-12-31 | 2012-07-18 | 联想(北京)有限公司 | 一种终端键盘的切换方法及移动终端 |
CN102427448A (zh) * | 2011-11-03 | 2012-04-25 | 中兴通讯股份有限公司 | 在虚拟桌面中使用客户端输入法的方法、终端及服务端 |
US20140289637A1 (en) * | 2013-03-21 | 2014-09-25 | Nec Laboratories America, Inc. | Remote Visualization and Control for Virtual Mobile Infrastructure |
US9225799B1 (en) * | 2013-05-21 | 2015-12-29 | Trend Micro Incorporated | Client-side rendering for virtual mobile infrastructure |
CN107077379A (zh) * | 2016-04-25 | 2017-08-18 | 深圳前海达闼云端智能科技有限公司 | 一种虚拟机创建方法和装置 |
CN106295379A (zh) * | 2016-08-30 | 2017-01-04 | 北京奇虎科技有限公司 | 加密输入法和装置、解密输入法和装置及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
TW201918864A (zh) | 2019-05-16 |
US10628614B2 (en) | 2020-04-21 |
US20190147195A1 (en) | 2019-05-16 |
CN109783165B (zh) | 2022-03-29 |
CN109783165A (zh) | 2019-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI658401B (zh) | 基於虛擬化行動架構之行動通訊裝置及其相關輸入法切換方法 | |
US20220342850A1 (en) | Data transmission method and related device | |
TWI438675B (zh) | 提供情境感知援助說明之方法、裝置及電腦程式產品 | |
CN107483721B (zh) | 基于黑屏手势的控制方法、装置、存储介质及移动终端 | |
KR101198271B1 (ko) | 컴퓨터를 통한 터치스크린식 이동통신단말기의 제어에 있어서 컴퓨터 및 피제어 이동통신단말기의 화면상태 관리방법 | |
KR20210134675A (ko) | 사용자 시연을 통하여 명령들을 학습하고 실행 가능하게 하기 위한 방법 및 시스템 | |
US20140173747A1 (en) | Disabling access to applications and content in a privacy mode | |
US9870235B2 (en) | Recording events generated for performing a task through user equipment | |
KR20130052151A (ko) | 터치스크린을 구비한 휴대 단말기의 데이터 입력 방법 및 장치 | |
KR20130042295A (ko) | 휴대 단말기의 운영 방법 및 장치 | |
JP2013025463A (ja) | 情報処理装置、情報処理方法およびコンピュータプログラム | |
CN106547676A (zh) | 一种用户操作录制方法及终端 | |
WO2015176352A1 (zh) | 一种基于安卓系统的应用间信息交互方法及装置 | |
WO2018086454A1 (zh) | 页面数据处理方法和装置 | |
CN108536388A (zh) | 分屏处理方法、装置、存储介质和电子设备 | |
CN112507329B (zh) | 安全防护方法及装置 | |
KR20160088609A (ko) | 전자 장치 및 전자 장치의 정보 공개 제어 방법 | |
CN112000408B (zh) | 移动终端及其显示方法 | |
CN114020379A (zh) | 一种终端设备、信息反馈方法和存储介质 | |
CN108279858A (zh) | 电子设备及其操作方法 | |
WO2017166653A1 (zh) | 一种触摸移动设备屏幕滚动方法及系统 | |
JP6200876B2 (ja) | コンテンツオーサリングツールでインデックスページを構築する方法およびシステム | |
KR102106484B1 (ko) | 정보 표시 방법, 단말 및 서버 | |
JP2023063313A (ja) | キャラクターユーザーインターフェースのメニューモデルを生成する方法及びコンピュータープログラム | |
WO2022022289A1 (zh) | 一种控件显示方法和设备 |