TWI599973B - 用於將預安裝之軟體連結至一線上商店之一使用者帳戶之系統及方法 - Google Patents
用於將預安裝之軟體連結至一線上商店之一使用者帳戶之系統及方法 Download PDFInfo
- Publication number
- TWI599973B TWI599973B TW101125195A TW101125195A TWI599973B TW I599973 B TWI599973 B TW I599973B TW 101125195 A TW101125195 A TW 101125195A TW 101125195 A TW101125195 A TW 101125195A TW I599973 B TWI599973 B TW I599973B
- Authority
- TW
- Taiwan
- Prior art keywords
- application
- user account
- user
- server
- client
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 68
- 238000003860 storage Methods 0.000 claims description 22
- 230000004044 response Effects 0.000 claims description 10
- 238000012795 verification Methods 0.000 claims description 4
- 238000013475 authorization Methods 0.000 description 31
- 238000004891 communication Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 12
- 230000009471 action Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 238000009826 distribution Methods 0.000 description 9
- 238000011084 recovery Methods 0.000 description 9
- 238000009434 installation Methods 0.000 description 8
- 238000012546 transfer Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 4
- 239000000463 material Substances 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 101150110972 ME1 gene Proteins 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0609—Buyer or seller confidence or verification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/128—Restricting unauthorised execution of programs involving web programs, i.e. using technology especially used in internet, generally interacting with a web browser, e.g. hypertext markup language [HTML], applets, java
-
- 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/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6272—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database by registering files or documents with a third party
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
- G06Q20/3672—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes initialising or reloading thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2117—User registration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Hardware Design (AREA)
- Finance (AREA)
- Marketing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Tourism & Hospitality (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Human Resources & Organizations (AREA)
- Primary Health Care (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Power Engineering (AREA)
- Development Economics (AREA)
- Computational Linguistics (AREA)
- Bioethics (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Description
本發明大體而言係關於數位產品之散佈,且更具體而言係關於用於將軟體應用程式連結至線上商店之使用者帳戶的技術。
本申請案為2011年7月12日申請之題為「用於將預安裝之軟體連結至線上商店之使用者帳戶的系統及方法(SYSTEM AND METHOD FOR LINKING PRE-INSTALLED SOFTWARE TO A USER ACCOUNT ON AN ONLINE STORE)」之美國專利申請案第13/181,424號的部分接續申請案;本申請案亦為2011年9月29日申請之題為「用於將預安裝之軟體連結至線上商店之使用者帳戶的系統及方法(SYSTEM AND METHOD FOR LINKING PRE-INSTALLED SOFTWARE TO A USER ACCOUNT ON AN ONLINE STORE)」之美國專利申請案第13/248,942號的部分接續申請案;且本申請案亦主張來自2012年2月9日申請之題為「用於將預安裝之軟體連結至線上商店之使用者帳戶的系統及方法(SYSTEM AND METHOD FOR LINKING PRE-INSTALLED SOFTWARE TO A USER ACCOUNT ON AN ONLINE STORE)」之美國臨時專利申請案第61/596,928號的優先權;所有該等申請案特此以全文引用之方式併入本文中。
電子裝置之製造商通常向消費者提供多種可用選項以在
購買之前個人化及定製電子裝置。舉例而言,可藉由選擇處理器、記憶體、硬碟機或配件來定製諸如電腦之個人計算裝置。製造商亦與各種軟體供應商合作以提供可連同電腦一起購買且在消費者提取電腦之前預安裝的軟體應用程式或程式。通常由製造商建立但亦可包括第三方應用程式之一些軟體應用程式可手動地或作為(例如)預設原廠映像之部分而免費預安裝於計算裝置上。因此,硬體組件及預安裝之軟體可由消費者進行個人化以確保購買之產品滿足消費者需求。
在消費者接收電子裝置之後,消費者在未來可能有時需要重新安裝或更新預安裝之軟體。舉例而言,軟體提供者可能發行了預安裝於電子裝置上之軟體的更新版本。此通常稱為軟體更新。為了獲得軟體更新,消費者訪問軟體提供者之實體或線上商店且購買或獲取軟體之更新版本。然而,此程序為耗時的且有時為混亂的。類似地,當購買者重新格式化電子裝置之儲存器時,購買者通常必須重新安裝軟體。在重新安裝期間,可向購買者提示含有預安裝之軟體的各種緊密光碟(CD)或其他媒體。然而,購買者可能誤置了CD,因此使得重新安裝程序非常麻煩。
本發明之額外特徵及優點將在隨後之描述中加以闡述,且將部分地自該描述顯而易見,或可藉由實踐本文中所揭示之原理而得知。可借助於在隨附申請專利範圍中特定指出的器具及組合來實現及獲得本發明之特徵及優點。本發
明之此等及其他特徵將自以下描述及隨附申請專利範圍變得更加完全地顯而易見,或可藉由實踐本文中所闡述之原理而得知。
本發明揭示用於使應用程式(亦即,套裝軟體)、預安裝之應用程式或單獨購買之應用程式與使用者帳戶相關聯的系統、方法及非暫時性電腦可讀儲存媒體。該使用者帳戶可與線上商店相關聯或儲存於線上商店上。此程序可稱為採用。採用可向該使用者帳戶提供某些特殊權限,諸如應用程式之下載、重新下載及更新。在其他實例中,採用可組態該使用者帳戶以准許關於經採用之應用程式的其他特殊權限,諸如贈送經採用之應用程式或出售經採用之應用程式。在一常見情境下,新電腦包括某些預安裝之軟體。使用者可執行且使用新電腦上之預安裝之軟體。然而,為了接收及/或能更新、備份及/或其他軟體相關內容或服務,使用者可「採用」預安裝之軟體。藉由採用預安裝之軟體,預安裝之軟體與特定使用者帳戶(諸如,線上電子商店帳戶)相關聯。接著,線上電子商店可處置更新、備份、還原、應用程式內購買等。然而,使用者可選擇使用預安裝之軟體而不以完整功能性「採用」預安裝之軟體,依賴於使用者帳戶或對線上電子商店帳戶之存取的特徵除外。當使用者採用預安裝之軟體時,線上電子商店可修改帳戶、資料庫及/或軟體自身以使得預安裝之軟體不適合由另一使用者採用。在另一常見情境下,將已購買、贈送或由使用者以其他方式獲取的套裝軟體或應用程式安裝於
使用者之計算裝置上。計算裝置可將由使用者帳戶採用套裝軟體或應用程式之軟體採用請求傳輸至伺服器。該軟體採用請求可包括套裝軟體之指示及與使用者帳戶相關聯之識別符。在一些實例中,權利證明亦包括於採用請求中作為對套裝軟體之真確性的證明。該權利證明可為可僅自擁有套裝軟體而導出的值。舉例而言,該權利證明可與套裝軟體之序號相關聯或自套裝軟體之序號導出。該權利證明亦可為可自套裝軟體導出的值及與電子裝置相關聯之後設資料。舉例而言,與電子裝置相關聯之後設資料可為可自與電子裝置相關聯之硬體導出的值。一旦已採用應用程式,更新、備份及/或其他軟體相關內容或服務便可用於使用者。
經組態以實踐該方法之系統呈現可用於下載之應用程式、接收將該應用程式下載至計算裝置之請求,且判定該應用程式為預安裝之應用程式。接著,該系統呈現經組態以請求將應用程式與使用者帳戶連結之使用者授權的授權提示,接收該使用者授權,且回應於接收到該使用者授權而產生唯一硬體識別符或擷取與計算裝置相關聯之權利證明。該系統基於唯一硬體識別符或權利證明判定應用程式可連結,且在可採用應用程式可連結時將該可採用應用程式與使用者帳戶連結。該系統可藉由接收對更新頁面之請求而呈現可用於下載之應用程式,且回應於接收到該請求而收集與該應用程式相關聯之存根收據。該存根收據可包括與應用程式相關聯之版本號碼及名稱。接著,該系統基
於該版本號碼及該名稱判定應用程式之更新在伺服器上可用於下載,且呈現應用程式之名稱。
或者,該系統可藉由以下步驟呈現可用於下載之應用程式:接收對購買頁面之請求;接收與計算裝置相關聯之資訊清單;及基於該資訊清單呈現預安裝之應用程式的清單。該資訊清單可包括可用於自伺服器下載之預安裝之應用程式的清單,其中預安裝之應用程式的該清單包括該應用程式。該系統可藉由搜尋應用程式資料庫及比較儲存於計算裝置上之應用程式之版本號碼與儲存於應用程式資料庫上之應用程式之版本號碼來判定應用程式在伺服器上具有可用更新。基於版本號碼之比較,可作出關於應用程式之更新是否存在於應用程式資料庫上之判定。系統可藉由判定應用程式與存根收據相關聯來判定應用程式為預安裝之應用程式。該系統可藉由以下步驟來判定應用程式為預安裝之應用程式:接收與計算裝置相關聯之資訊清單,該資訊清單包括預安裝之應用程式之清單;及判定該應用程式包括於預安裝之應用程式之該清單內。系統可藉由將唯一硬體識別符或購買證明傳輸至伺服器及判定該預安裝之應用程式是否已與另一使用者帳戶連結來判定預安裝之應用程式可連結。在另外其他實例中,該系統藉由使該預安裝之應用程式與該使用者帳戶相關聯及更新唯一性表以包括唯一硬體識別符或購買證明來使該預安裝之應用程式與該使用者帳戶連結。該唯一性表可包括與具有另一預安裝之應用程式之另一電子裝置相關聯的另一唯一硬體識別符
或購買證明,且該另一預安裝之應用程式可與另一使用者帳戶連結。
在另一變化中,該系統接收將預安裝之應用程式與線上商店之使用者帳戶連結的請求,該線上商店經組態以將與該使用者帳戶相關聯之應用程式傳輸至與該使用者帳戶相關聯之一或多個計算裝置。接著,該系統產生與計算裝置相關聯之唯一硬體識別符或購買證明,且基於該唯一硬體識別符或購買證明來判定該預安裝之應用程式可連結。當該預安裝之應用程式可連結時,該系統將該預安裝之應用程式與該使用者帳戶連結。該唯一硬體識別符可基於電子裝置之一或多個硬體組件,諸如MAC位址、通用裝置識別符(UDID)、邏輯板序號或乙太網路硬體位址。在其他實例中,可使用購買證明。該購買證明可基於電子裝置之硬體組件、與應用程式之贈送、購買或獲取相關聯之後設資料。判定預安裝之應用程式可連結可包括:將唯一硬體識別符或購買證明傳輸至伺服器;及判定該預安裝之應用程式或購買證明是否已與另一使用者帳戶連結。該系統可藉由判定計算裝置之原始組態包括預安裝之應用程式來判定該預安裝之應用程式可連結。將該預安裝之應用程式與該使用者帳戶連結可包括:使該預安裝之應用程式與該使用者帳戶相關聯;更新唯一性表以包括該唯一硬體識別符或購買證明,該唯一性表包括與具有另一預安裝之應用程式之另一電子裝置相關聯的另一唯一硬體識別符或購買證明,該另一預安裝之應用程式已與另一使用者帳戶連結。
在又一實例中,將預安裝之應用程式與使用者帳戶連結進一步包括自資訊清單移除與該預安裝之應用程式相關聯之後設資料,該資訊清單經組態以列出尚未與該使用者帳戶連結之預安裝之應用程式。該系統可將該預安裝之應用程式下載至計算裝置。
為了描述可獲得本發明之上述及其他優點及特徵之方式,將參考在隨附圖式中說明之本發明之特定實施例演現上文簡要描述之原理之更特定描述。應理解,此等圖式僅描繪本發明之例示性實施例,且因此並不將此等圖式視為限制本發明之範疇,本文中之原理將經由使用隨附圖式來額外特定且詳細地描述及解釋。
下文詳細論述本發明之各種實施例。雖然論述了特定實施,但應理解,僅出於說明目進行此論述。熟習相關技術者將認識到,在不脫離本發明之精神及範疇之情況下可使用其他組件及組態。
本發明解決此項技術中對使電子裝置上之預安裝之軟體與散佈中心或線上商店之使用者帳戶相關聯的需求。本發明亦解決此項技術中對使除預安裝之軟體以外的其他類型之軟體與使用者帳戶相關聯的需求。舉例而言,經購買之軟體、作為禮物接收之軟體、自軟體製造商免費散佈或象徵性收費而散佈之軟體或使用其他方法獲取之軟體可與線上商店或店鋪之使用者帳戶相關聯。此程序可稱為線上商店之使用者帳戶對軟體之「採用」。藉由使軟體與線上商
店之使用者帳戶相關聯,可自線上商店下載軟體更新及重新安裝,因此證明管理電子裝置上之軟體的更簡單、更便利方式。此外,與使用者帳戶相關聯之其他計算裝置亦可自線上商店接收軟體更新及重新安裝。圖1至圖15中之以下描述適用於預安裝之應用軟體、套裝軟體及經由其他手段(諸如,禮物、購買或以其他方式散佈或獲取)獲取之應用程式。因而,如本文中所使用,術語「預安裝之應用程式」可與贈送之應用程式、購買之應用程式、散佈之應用程式、獲取之應用程式及其他者互換地使用。換言之,「預安裝之應用程式」可為使用者具有所有權之任何應用程式。類似地,「唯一硬體識別符」可為經組態以將權利證明或所有權提供至安裝於計算裝置上之應用程式的任何唯一識別符。舉例而言,權利證明可為對於建立之應用程式之每一複本而言唯一的值。權利證明亦可為用於兌換應用程式之兌換碼。在其他實例中,權利證明可為唯一值與非唯一值之組合,諸如組合兌換碼(其可能不為唯一的)與唯一識別符(其為唯一的),該唯一識別符與使用者帳戶相關聯。在圖1中說明可用以實踐概念之基本通用系統或計算裝置的簡要介紹性描述。其後將為如何使預安裝之軟體與使用者帳戶相關聯的更詳細描述,包括若干變化,如各種實施例所闡述。本發明現轉向圖1。
參看圖1,例示性系統100包括通用計算裝置100,該通用計算裝置100包括處理單元(CPU或處理器)120及系統匯流排110,該系統匯流排110將包括系統記憶體130(諸如,
唯讀記憶體(ROM)140及隨機存取記憶體(RAM)150)之各種系統組件耦接至處理器120。系統100可包括直接與處理器120連接、與處理器120緊密近接或經整合而作為處理器120之部分的高速記憶體之快取記憶體122。系統100將資料自記憶體130及/或儲存裝置160複製至快取記憶體122以供處理器120快速存取。以此方式,快取記憶體提供避免處理器120在等待資料時延遲之效能提昇。此等及其他模組可控制或經組態以控制處理器120執行各種動作。其他系統記憶體130亦可供使用。記憶體130可包括具有不同效能特性之多種不同類型之記憶體。可瞭解,本發明可在具有一個以上處理器120之計算裝置100上操作,或在經網路連接在一起以提供更大處理能力之計算裝置之群組或叢集上操作。處理器120可包括任何通用處理器及硬體模組或軟體模組(諸如,儲存於儲存裝置160中之模組1 162、模組2 164及模組3 166,該等模組經組態以控制處理器120)以及專用處理器(其中軟體指令併入於實際處理器設計中)。處理器120可本質上為完全自含式計算系統,其含有多個核心或處理器、匯流排、記憶體控制器、快取記憶體等。多核心處理器可對稱或不對稱。
系統匯流排110可為若干類型之匯流排結構中之任一者,該等匯流排結構包括使用多種匯流排架構中之任一者的記憶體匯流排或記憶體控制器、周邊匯流排及區域匯流排。儲存於ROM 140或其類似者中之基本輸入/輸出(BIOS)可提供幫助在計算裝置100內之元件之間傳送資訊(諸如,
在啟動期間)的基本常式。計算裝置100進一步包括儲存裝置160,諸如硬碟機、磁碟機、光碟機、磁帶機或其類似者。儲存裝置160可包括用於控制處理器120之軟體模組162、164、166。預期其他硬體或軟體模組。儲存裝置160係藉由驅動介面連接至系統匯流排110。驅動器及相關聯之電腦可讀儲存媒體提供對電腦可讀指令、資料結構、程式模組及用於計算裝置100之其他資料的非揮發性儲存。在一態樣中,執行特定功能之硬體模組包括儲存於非暫時性電腦可讀媒體中之結合必要硬體組件(諸如,處理器120、匯流排110、顯示器170等)以執行功能的軟體組件。基本組件為熟習此項技術者所已知的,且取決於裝置之類型(諸如,裝置100為小型手持式計算裝置、桌上型電腦抑或電腦伺服器)而預期適當變化。
儘管本文中所描述之例示性實施例使用硬碟160,但熟習此項技術者應瞭解,亦可在例示性作業環境中使用可儲存可由電腦存取之資料的其他類型之電腦可讀媒體,諸如磁帶匣、快閃記憶卡、數位影音光碟、卡匣、隨機存取記憶體(RAM)150、唯讀記憶體(ROM)140、纜線或含有位元串流之無線信號及其類似者。非暫時性電腦可讀儲存媒體明確地將諸如能量、載波信號、電磁波及信號本身之媒體排除在外。
為了實現使用者與計算裝置100之互動,輸入裝置190表示任何數目種輸入機構,諸如用於語音之麥克風、用於示意動作或圖形輸入之觸敏式螢幕、鍵盤、滑鼠、運動輸
入、語音等。輸出裝置170亦可為熟習此項技術所已知之數種機構中的一或多者。在一些例子中,多模態系統使得使用者能夠提供多種類型之輸入以與計算裝置100通信。通信介面180大體上控管及管理使用者輸入及系統輸出。不限制在任何特定硬體配置上操作,且因此可容易地用改良之硬體或韌體配置(在其得以開發時)來取代此處之基本特徵。
為了解釋之清晰起見,將說明性系統實施例呈現為包括個別功能區塊,該等個別功能區塊包括標示為「處理器」或處理器120之功能區塊。此等區塊表示之功能可經由使用共用或專用硬體來提供,包括(但不限於)能夠執行軟體之硬體及經專門建置以作為在通用處理器上執行之軟體之等效物而操作的硬體(諸如,處理器120)。舉例而言,圖1中所呈現之一或多個處理器的功能可由單一共用處理器或多個處理器提供。(術語「處理器」之使用不應被解釋為專指能夠執行軟體之硬體)。說明性實施例可包括微處理器及/或數位信號處理器(DSP)硬體、用於儲存執行下文所論述之操作之軟體的唯讀記憶體(ROM)140,及用於儲存結果之隨機存取記憶體(RAM)150。亦可提供超大型積體電路(VLSI)硬體實施例以及與通用DSP電路組合之定製VLSI電路。
將各種實施例之邏輯操作實施為:(1)在通用電腦內之可程式化電路上執行之電腦實施步驟、操作或程序的序列;(2)在專用可程式化電路上執行之電腦實施步驟、操作
或程序的序列;及/或(3)可程式化電路內之互連之機器模組或程式引擎。圖1中所展示之系統100可實踐所敍述方法之全部或部分,可為所敍述系統之部分,及/或可根據所敍述之非暫時性電腦可讀儲存媒體中之指令而操作。可將此等邏輯操作實施為模組,該等模組經組態以控制處理器120根據模組之程式化來執行特定功能。舉例而言,圖1說明為經組態以控制處理器120之模組的三個模組Mod1 162、Mod2 164及Mod3 166。此等模組可儲存於儲存裝置160上且在執行階段載入至RAM 150或記憶體130中或可如此項技術中將已知而儲存於其他電腦可讀記憶體位置中。
已揭示計算系統之一些組件,本發明現返回至對特定技術之論述,該技術用於使計算裝置(諸如,個人電腦、膝上型電腦、遊戲控制台、智慧型電話、行動電話或平板PC)上之預安裝之軟體與線上應用程式散佈商店或商場之使用者帳戶相關聯(其類似於連結或採用)。本文中所闡述之方法可藉由將預安裝之軟體連結至線上散佈網站(諸如,線上商店或散佈中心)之使用者帳戶來改良升級預安裝之軟體或將預安裝之軟體重新安裝至計算裝置的效率及便利性。線上散佈網站將與使用者帳戶相關聯之預安裝之軟體傳輸至連結至使用者帳戶之一或多個計算裝置。可將預安裝之軟體及預安裝之軟體之更新兩者傳輸至一或多個計算裝置。在一些實例中,散佈網站可指定對與給定使用者帳戶相關聯之可接收與給定使用者帳戶相關聯之軟體的計算裝置之數目的限制。在其他實例中,預安裝之軟體為
一次產生且複製至裝置群組中之每一者的標準「映像」之部分。舉例而言,標準裝置「映像」可包括作業系統、驅動程式、程式、設定等。因此,每一映像裝置具有相同軟體組態,包括預安裝之軟體,且在終端使用者(或其他實體)設置裝置之後,可採用預安裝之軟體且使其與線上商店或商場之使用者帳戶相關聯。
圖2說明例示性應用程式散佈系統。在此實例中,散佈系統200包括散佈中心210、應用程式資料庫220、組態伺服器230、網際網路250或其他網路、計算裝置260、計算裝置270及攜帶型裝置280。散佈中心210、應用程式資料庫220及組態伺服器230一起可表示主從式模型之伺服器側240的不同單獨組件。類似地,計算裝置260、計算裝置270及攜帶型裝置280可表示主從式模型之用戶端側290上的不同單獨組件。因此,散佈系統200之寬泛概述包括伺服器側240經由網際網路250與用戶端側290通信。作為一實例,可將伺服器側240向使用者表示為用於出售及散佈應用程式之線上商店,或多個雲端伺服器。來自用戶端側290之裝置可使用儲存於裝置上之應用程式管理電腦程式與線上商店通信。在其他實例中,可用諸如電腦網路、電話網路、乙太網路、區域網路、有線網路、無線網路及其他網路的其他通信網路來替換網際網路250。
計算裝置260可包括應用程式261。應用程式261可包括預安裝於計算裝置260上、經提供作為封裝之部分或為之提供某一種類之安裝媒體的應用程式。在一常見情境下,
計算裝置260之所有者自製造商購買已安裝有此等應用程式之計算裝置260。應用程式261亦可包括由計算裝置260經由其他手段獲取之應用程式(或套裝軟體),諸如贈送、購買或免費散佈(僅舉幾個列子)之應用程式。應用程式261亦可包括由計算裝置260之使用者自散佈中心210購買的應用程式。為了自散佈中心210購買所要應用程式,使用者登錄使用者帳戶291,該使用者帳戶291含有與使用者已購買之應用程式相關聯的後設資料及與用於向散佈中心210付款以換取所要應用程式之付款資訊相關聯的後設資料。一旦登錄,使用者便可選擇要購買之所要應用程式。當使用者同意支付該應用程式之購買價格時,使用者之付款資訊用以完成交易。一旦交易完成,所要應用程式便與使用者帳戶291相關聯,因此允許使用者下載所要應用程式以及所要應用程式之更新。與使用者帳戶291相關聯之應用程式亦可更新或重新下載至與使用者帳戶291相關聯之其他裝置上。
在一些實例中,使用者可具有不在此時間點使應用程式與使用者帳戶相關聯之選項。舉例而言,將應用程式作為禮物接收之使用者可能不具有使用者帳戶或不希望使該應用程式與其使用者帳戶相關聯。在第一情境下,計算裝置260可允許使用者安裝應用程式而不需要使用者設置使用者帳戶。若使用者希望接收更新或將該應用程式安裝於其所擁有之其他電子裝置上,則使用者可選擇使用者帳戶且將該應用程式與其使用者帳戶連結(亦即,採用)。在此實
例中,計算裝置260、計算裝置270及攜帶型裝置280皆與使用者帳戶291相關聯,且因此經組態以接收已與使用者帳戶291相關聯之所有應用程式的更新及重新下載。此外,攜帶型裝置280可與計算裝置270通信以在兩個裝置之間傳送數位資料及應用程式。在一實例中,計算裝置270可經組態而為含有與使用者帳戶291相關聯之所有應用程式的中心儲存庫且將選定應用程式傳送至攜帶型裝置280。在此說明書中,術語「應用程式」指代由軟體提供者提供之軟體程式或應用程式的複本。在其他實例中,最初預安裝於計算裝置上之除軟體應用程式及軟體程式(諸如,系統軟體、企業軟體、多媒體檔案、視訊檔案、音訊檔案及影像檔案)以外的其他數位產品(諸如,使用者具有所有權之軟體應用程式)亦可與使用者帳戶291相關聯及由散佈中心210散佈/重新散佈。
耦接至應用程式資料庫220之散佈中心210經組態以出售、遞送及維護來自應用程式資料庫220之應用程式。應用程式資料庫220可經組態以儲存可用於自伺服器側240散佈之應用程式中的一些或全部。該等應用程式可經由網際網路250出售、更新及遞送(亦即,傳輸)至用戶端側290中之裝置。因而,散佈中心210表示應用程式之線上商店。舉例而言,應用程式資料庫220可自散佈中心210接收對應用程式之請求,且回應於該請求而將所請求之應用程式傳輸至散佈中心210,散佈中心210隨後將該應用程式傳輸至請求裝置。所請求之應用程式可為可用於購買之應用程式
或先前與使用者帳戶相關聯之應用程式(亦即,已採用之單獨獲取或預安裝之應用程式)。在其他實例中,應用程式資料庫220可直接將所請求之應用程式傳輸至請求裝置。在另外其他實例中,應用程式資料庫220可駐存於用戶端側290上,其中伺服器側240可基於與使用者帳戶相關聯之應用程式而授予對應用程式資料庫220之特定應用程式的存取。
用戶端側290之裝置可傳輸軟體採用請求以將裝置上之預安裝之應用程式或以其他方式獲取但未採用之應用程式與使用者帳戶連結(亦即,相關聯或採用)。連結應用程式允許使用者使應用程式與使用者帳戶相關聯,因此允許使用者將應用程式下載至亦與同一使用者帳戶相關聯之其他裝置。此程序可稱作「連結」、「採用」或「關聯」應用程式。舉例而言,計算裝置260可請求將來自應用程式261之應用程式與使用者帳戶291連結。可經由網際網路250將該請求連同與應用程式或計算裝置260相關聯之唯一識別符傳輸至散佈中心210,以判定該應用程式是否可與使用者帳戶291相關聯。唯一硬體識別符為基於裝置硬體之唯一識別符,其用以區別特定裝置與所有其他裝置。舉例而言,製造商可確保所製造之每一裝置皆包括唯一硬體識別符,該唯一硬體識別符為唯一的且因此不同於任何其他裝置之唯一硬體識別符。作為一實例,唯一硬體識別符可基於裝置之邏輯板序號及/或乙太網路硬體位址。在一實例中,此等兩個值可串連且雜湊以產生唯一硬體識別符。在
其他實例中,可串連、雜湊或使用多種資料操縱演算法以其他方式組合對裝置特定之其他後設資料,以形成唯一硬體識別符。在另外其他實例中,用以判定應用程式是否可與使用者帳戶291相關聯之唯一識別符可基於任何其他購買或權利證明,該任何其他購買或權利證明可充當與唯一識別符相關聯之應用程式(亦即,套裝軟體)係自軟體製造商合法獲取的證據。在一例子中,唯一識別符可自與應用程式相關聯之後設資料或屬性導出。在另一例子中,唯一識別符可自與以下各者相關聯之後設資料導出:應用程式、用戶端裝置、使用者帳戶、與使用者帳戶相關聯之其他用戶端裝置,或以上各者中之一或多者的組合。
在一實施例中,散佈中心210接收唯一識別符,且處理或分析該唯一識別符以判定應用程式是否可與使用者帳戶相關聯。在某些情境下,應用程式不可與使用者帳戶相關聯。舉例而言,若裝置之應用程式先前已與另一使用者帳戶相關聯,則該應用程式不可與使用者帳戶相關聯。作為另一實例,若應用程式並非授權複本,則該應用程式可能不能夠與使用者帳戶相關聯。此情形可能在使用者將最初安裝於一裝置上之應用程式手動複製至另一裝置上時發生。作為又一實例,關聯程序可能需要使用者登錄電子裝置上之使用者帳戶以將應用程式連結至使用者帳戶。
在另一實施例中,散佈中心210接收唯一識別符,且處理或分析該唯一識別符以判定應用程式是否可與使用者帳戶相關聯。作為一實例,處理唯一識別符可包括藉由比較
該唯一識別符與資料庫來驗證該唯一識別符。資料庫可具有複數個條目,每一條目儲存與應用程式之授權複本相關聯的唯一識別符。比較之結果可用以判定應用程式之採用狀態,諸如應用程式為有效複本抑或應用程式為無效複本,或應用程式是否已與使用者帳戶相關聯。作為另一實例,處理唯一識別符可包括將唯一識別符輸入至雜湊表中以判定應用程式之採用狀態。在又一實例中,可接收唯一識別符作為至驗證引擎之輸入,驗證引擎判定應用程式之此安裝是否有效且尚未採用。在另外其他實例中,可將其他資料處理技術應用於唯一識別符以判定應用程式是否可與使用者帳戶相關聯。該應用程式可最近由使用者獲取。換言之,應用程式可已由使用者在電子裝置自散佈或製造之購買及接收之後獲取。或者,可在購買電子裝置時獲取應用程式。一旦已藉由散佈中心210判定採用狀態,便可將根據採用狀態之確認傳輸至電子裝置。可傳輸該確認以告知電子裝置採用程序之狀態。基於該確認,電子裝置可請求套裝軟體之下載或套裝軟體之更新。在其他實例中,散佈伺服器210可根據採用狀態自動開始將套裝軟體或套裝軟體之更新下載至電子裝置的程序。
伺服器側240可併有數個伺服器及表以判定是否應授權連結請求。舉例而言,散佈中心210包括經組態以處理唯一識別符以判定連結請求之有效性或合法性的唯一性伺服器211。唯一性伺服器211可包括唯一性表,該唯一性表經組態以維持具有與使用者帳戶連結之一或多個預安裝之應
用程式的電子裝置之資料庫或表。作為一實例,唯一性表可經組態以儲存已將預安裝之應用程式與使用者帳戶連結之裝置(亦即,已採用與裝置相關聯之預安裝之應用程式的裝置)的唯一硬體識別符。唯一性表亦可經組態以儲存與已與使用者帳戶相關聯之應用程式相關聯的後設資料。當裝置藉由使用者帳戶採用其應用程式中之一些或全部(亦即,將其應用程式中之一些或全部與使用者帳戶連結)時,裝置之唯一硬體識別符或經採用之應用程式的唯一識別符儲存於唯一性表內。此情形防止連結已採用之應用程式的未來請求。舉例而言,執行對唯一識別符是否在唯一性表中之查詢判定與唯一硬體識別符相關聯之裝置是否已將其預安裝之應用程式與使用者帳戶連結。類似地,該查詢亦可判定與唯一識別符相關聯之應用程式是否已與使用者帳戶連結。作為另一實例,唯一性表可經組態以儲存電子裝置之唯一硬體識別符連同與電子裝置之先前已採用(亦即,與使用者帳戶連結)的一或多個預安裝之應用程式相關聯的後設資料。換言之,唯一性表經組態為裝置之唯一硬體識別符與一或多筆後設資料之間的一對多映射,該一或多筆後設資料與裝置之已選擇性地採用的預安裝之應用程式相關聯。若唯一硬體識別符並不存在於唯一性表中,則查詢唯一性表以查找唯一硬體識別符可不傳回任何資料,且若唯一硬體識別符確實存在於唯一性表中,則查詢唯一性表以查找唯一硬體識別符可傳回與已選擇性地採用之預安裝之應用程式相關聯的後設資料。此情形可產生
選擇性地藉由第一使用者帳戶採用裝置上之預安裝之應用程式及藉由第二使用者帳戶採用裝置上之另一預安裝之應用程式的能力。在另外其他實例中,唯一性表可經組態以維持已連結至使用者帳戶之應用程式的資料庫或表。已連結之應用程式可具有儲存於唯一性表中之唯一識別符,藉此維持已採用之應用程式的最新資料庫。
在一實例中,組態伺服器230可藉由以下步驟來驗證連結請求之有效性:檢查電子裝置之原始組態以驗證或判定在電子裝置離開製造商時特定應用程式已預安裝於該裝置上。組態伺服器亦可驗證或識別使用者具有所有權之應用程式,而不管應用程式是否已安裝於使用者裝置上或與使用者帳戶相關聯。因此,亦可識別使用者具有所有權但尚未關聯或安裝之應用程式。組態伺服器230包括儲存由製造商建立之電子裝置之原始組態的資料庫。該原始組態可包括與電子裝置一起遞送之作業系統之版本及應用程式之版本(若存在)。舉例而言,經由線上商店訂購電子裝置之使用者可在購買時將該裝置組態有一或多個應用程式。該等應用程式係藉由在購買時基於組態進行製造而安裝於電子裝置上。製造將電子裝置之組態傳達至組態伺服器230以供後續查找。當組態伺服器230自電子裝置接收含有唯一硬體識別符之查找請求時,組態伺服器230執行對資料庫之搜尋或查詢且傳回安裝於裝置上之作業系統的版本及/或含有安裝於電子裝置上之應用程式之版本的清單。組態伺服器230可比較經安裝之應用程式之清單與使用者正試
圖與使用者帳戶相關聯之應用程式,以判定使用者正試圖關聯之應用程式是否為授權安裝或先前是否已與另一使用者帳戶相關聯。或者,組態伺服器230可將預安裝之應用程式之清單傳遞至散佈中心210以判定是否應授予連結請求。此檢查可防止使用者試圖藉由將預安裝之應用程式自一裝置複製至另一裝置而欺騙(circumvent)散佈系統200。
一旦伺服器側240之一或多個元件使連結請求有效,預安裝之應用程式便與使用者帳戶相關聯(亦即,應用程式採用)。此外,唯一性伺服器211或組態伺服器230可經更新以考慮應用程式採用。舉例而言,可將新條目添加至唯一性伺服器211之唯一性表中,此係因為與電子裝置相關聯之預安裝之應用程式中的一些或全部已被採用。在一些實例中,散佈中心210可在預安裝之應用程式與使用者帳戶相關聯之後將預安裝之應用程式的更新傳輸至計算裝置260。在其他實例中,散佈中心210可將預安裝之應用程式傳輸至與使用者帳戶相關聯之諸如計算裝置270的其他裝置,但計算裝置270最初並未組態有預安裝之應用程式。經由對應用程式採用之類似請求,計算裝置270之儲存於應用程式271中的預安裝之應用程式及攜帶型裝置280之儲存於應用程式281中的預安裝之應用程式可與使用者帳戶291相關聯,且最終散佈至計算裝置260、計算裝置270及/或攜帶型裝置280。
圖3說明例示性主從式系統。主從式系統300包括用戶端裝置350及伺服器360。伺服器360可經組態以對來自用戶
端裝置350之請求作出回應,且可包括來自圖2之伺服器側240的一或多個元件。用戶端裝置350可藉由將頁面請求提交至伺服器360而使應用程式(預安裝或以其他方式獲取)與使用者帳戶相關聯。用戶端裝置350亦可藉由如在預安裝之應用程式的情境下將相同或類似頁面請求提交至伺服器360而使其他應用程式與使用者帳戶相關聯。
一種類型之頁面請求為更新頁面請求301。更新頁面請求301可為傳輸至伺服器360以執行對可用應用程式更新之查詢的請求。回應於更新頁面請求301,伺服器360可傳回超文字標記語言(「HTML」)頁面303,該頁面303經組態以告知使用者儲存於用戶端裝置350中之具有可用更新的應用程式。在一些實例中,伺服器360可將後設資料傳回至用戶端裝置350,該用戶端裝置350又產生HTML頁面以呈現給使用者。更新頁面請求301可包括儲存於用戶端裝置350中之每一應用程式的數位收據(digital receipt)。該收據含有與應用程式有關之後設資料以用於用文件證明軟體之購買或所有權。一種類型之收據為真實收據,其與經購買之應用程式或已採用之應用程式相關聯。真實收據可包括對應用程式之描述、應用程式之版本號碼、購買應用程式之日期、與購買應用程式之購買者有關之資訊、與最初安裝有該應用程式之裝置有關的資訊,及其他資訊。換言之,真實收據為對購買者及/或已購買有應用程式之電子裝置而言唯一的購買證明。另一類型之收據為存根收據。存根收據含有真實收據中之資訊的子集,且在應用程式尚
未藉由使用者帳戶採用時為應用程式之部分。在一實例中,存根收據唯一地將應用程式之此複本與其他複本識別開。此情形可允許伺服器判定應用程式之此特定複本(其可贈送給使用者或由使用者以其他方式獲取)是否可由使用者採用。在另一實例中,存根收據係由製造商產生以作為待與預安裝之應用程式相關聯的收據。為了加速及簡化製造商對應用程式之安裝,存根收據可包括少於真實收據中之資訊量的最少資訊量。舉例而言,存根收據可包括向伺服器識別應用程式之應用程式識別符以及識別應用程式之版本的版本號碼。應用程式識別符可為與應用程式相關聯之名稱。存根收據可能不包括對購買者特定之資訊,諸如購買應用程式之日期及與購買應用程式之購買者或安裝有預安裝之應用程式之裝置有關的資訊。換言之,存根收據可能不含有使用者帳戶、使用者帳戶資訊,或與用戶端裝置、計算裝置或其他裝置有關之資訊。應用程式識別符可為與預安裝之應用程式相關聯之名稱。在一些實例中,存根收據係由製造商在應用程式預安裝於裝置上或裝置準備好遞送時產生。在其他實例中,存根收據可由伺服器260產生且隨後傳輸至用戶端裝置350以與預安裝之應用程式相關聯。伺服器360可回應於由用戶端裝置350進行之請求或伺服器360與用戶端裝置350之間的週期性排程之通信而產生存根收據。一旦採用預安裝之應用程式,便可用真實收據來替換存根收據。在另一實例中,將存根收據產生為與在獲取應用程式時不與用戶端裝置相關聯的已購買、
贈送或以其他方式獲取之應用程式相關聯的收據。此存根收據可由製造商、應用程式散佈者、線上商店或其他者產生。在一些狀況下,存根收據可經分批處理且指派給應用程式以供散佈。存根收據保存於伺服器上且用以鑑認採用請求。如在先前實例中,可在應用程式採用程序期間用真實收據替換存根收據。真實收據可由用戶端裝置350、伺服器360或主從式系統300中之其他元件產生。
在此實例中,更新頁面請求301包括與預安裝之應用程式310相關聯的存根收據A 311、與預安裝之應用程式320相關聯的存根收據B 321,及與應用程式330相關聯之真實收據331。在購買用戶端裝置350之後自伺服器360購買應用程式330,且因此應用程式330包括真實收據。回應於更新頁面請求301,伺服器360產生HTML 303,該HTML 303告知使用者預安裝之應用程式310、預安裝之應用程式320或應用程式330是否具有可自伺服器360下載之可用更新。不能下載與尚未採用(亦即,與使用者帳戶連結或與使用者帳戶相關聯)之預安裝之應用程式相關聯的可用更新,直至預安裝之應用程式已由使用者帳戶採用為止。一旦將可用更新下載且安裝於用戶端裝置350上,便可用真實收據來替換存根收據,該真實收據包括其他後設資料,諸如購買應用程式之日期(亦即,安裝可用更新之日期)、購買應用程式之使用者及最初安裝有該應用程式之電子裝置。
另一類型之頁面請求為購買頁面請求302。可將購買頁面請求302傳輸至伺服器360以請求已由用戶端裝置350之
使用者購買之應用程式的清單。回應於該請求,伺服器360可傳回HTML頁面303,HTML頁面303經組態以告知使用者已由用戶端裝置350之使用者購買的應用程式及(視情況)已安裝於用戶端裝置350中之應用程式。可下載及安裝未儲存於用戶端裝置350中之已購買之應用程式。HTML頁面303亦可包括可用於採用(亦即,與使用者帳戶連結或與使用者帳戶相關聯)之應用程式。可經由更新頁面請求301或替代地經由購買頁面請求302選擇用戶端裝置上尚未與使用者帳戶相關聯之應用程式以供採用。未採用之應用程式可在請求中傳輸收據或其他形式之權利證明以將該應用程式或所要應用程式安裝於用戶端裝置上。
購買頁面請求302可包括資訊清單340。資訊清單340可經組態以儲存與預安裝之應用程式或以其他方式獲取之應用程式相關聯的資訊。此資訊可由伺服器360用以告知使用者可用於採用之應用程式。資訊清單340包括清單、表或經組態以儲存用戶端裝置350中之應用程式之版本號碼的其他資料結構。應用程式之版本號碼可在存根收據或與應用程式相關聯之其他後設資料中找到。在一實例中,在用戶端裝置350第一次啟動時產生資訊清單340。舉例而言,可在用戶端裝置之第一次啟動期間藉由利用用戶端裝置上之「spotlight」(亦即,搜尋)功能來搜尋電腦以尋找存根收據來產生資訊清單,該等存根收據隨後用以產生資訊清單。如以下將論述,資訊清單可儲存於組態伺服器中以在將應用程式與使用者帳戶連結期間或在電子裝置之恢
復模式期間存取。
在此實例中,查詢用戶端裝置350以定位存根收據311及存根收據321,存根收據311及存根收據321隨後用以產生資訊清單340。在用戶端裝置350之重新格式化或恢復期間,可自用戶端裝置350刪除預安裝之應用程式及以其他方式獲取之應用程式兩者。可將已與使用者帳戶連結之應用程式重新下載至用戶端裝置350。然而,尚未與使用者帳戶連結之預安裝之應用程式存在完全丟失之風險。如以下將進一步詳細描述,資訊清單340充當防止尚未採用之應用程式丟失的機制。不能下載可用於採用之應用程式直至預安裝之應用程式已與使用者帳戶連結或相關聯為止。
一旦將可用更新下載且安裝於用戶端裝置350上,資訊清單340便可經編輯以移除與目前採用之應用程式相關聯的存根收據。此外,經安裝之應用程式含有真實收據。在一些實例中,藉由安裝於用戶端裝置350中之應用程式管理程式(圖中未展示)管理及處置更新頁面請求301及購買頁面請求302之產生連同HTML頁面303之處理及擷取。該應用程式管理程式可專屬於製造商且經組態以特定地與屬於製造商之伺服器通信。
主從式系統300亦可採用由用戶端裝置350獲取但不與使用者帳戶相關聯(例如,贈送、已購買但未連結至使用者帳戶,或經由其他手段散佈至用戶端裝置)之應用程式。作為一實例,經獲取之應用程式可經由更新頁面請求、購買頁面請求或其他頁面請求與使用者帳戶連結。該請求可
包括存根收據或與該存根收據相關聯或自該存根收據導出之後設資料。作為另一實例,資訊清單340可在藉由用戶端裝置350獲取未採用之應用程式(亦即,尚未與使用者帳戶連結之應用程式)時更新。
圖4說明用於處理更新頁面請求之例示性方法。說明由用戶端及伺服器執行之動作的方法400可經組態以管理在更新頁面請求期間用戶端與伺服器之間的通信。由伺服器執行之動作可由儲存於位於伺服器側上之散佈中心或其他組件上的散佈程式執行,而由用戶端執行之動作可由儲存於用戶端之電子裝置上的應用程式管理程式執行。方法400可以使用者在由用戶端裝置供應之圖形使用者介面中選擇更新標籤連結開始。例示性更新標籤連結可為圖5中之連結451。一旦用戶端已接收對更新頁面之使用者請求(401),用戶端便查詢或搜尋用戶端裝置以查找收據或與安裝於用戶端裝置中之應用程式相關聯的其他形式之權利證明(403)。在其他實例中,查詢可在無使用者互動之情況下自動開始。舉例而言,伺服器可藉由以預定時間間隔或在預定時間點與用戶端通信來起始查詢。可使用與用戶端裝置之作業系統相關聯的功能性或替代地使用儲存於用戶端裝置上之應用程式或常式來執行搜尋。將找到之收據或將收據之複本傳輸至伺服器(405)。可跨越任何通信網路(諸如,乙太網路、網際網路、區域網路或其他網路)傳送該等收據。伺服器接收收據且對其進行處理以判定與收據相關聯之應用程式是否具有更新(407)。此處理可包括存取諸
如圖2中之應用程式資料庫220的應用程式資料庫,及比較收據之版本號碼與儲存於應用程式資料庫中之應用程式之版本號碼。此處理亦可包括藉由判定安裝於用戶端裝置上之應用程式經組態以用於由伺服器散佈來驗證應用程式適合採用。在一些實施例中,伺服器亦可驗證在此時間點應用程式先前尚未被採用,此驗證可包括以下步驟:擷取唯一地識別經安裝之應用程式之複本的唯一識別符;及驗證該唯一識別符尚未與任何使用者帳戶相關聯。可在產生HTML頁面(408)或操縱某一其他使用者介面時使用具有更新之應用程式的清單,諸如桌面應用程式或智慧型電話應用程式。HTML頁面可包括與具有可用更新之應用程式有關的資訊。此資訊可包括應用程式之原始購買日期、應用程式之描述,及經更新之應用程式中之改變或修改的描述。HTML僅為可發送至用戶端以通知用戶端一或多個應用程式具有更新或可用於採用的通知之一實例。伺服器可接著將HTML頁面傳輸至用戶端(409)。在一些實例中,伺服器可經由與用戶端傳輸收據之頻道相同之頻道來傳輸HTML頁面。或者,伺服器可將足夠資訊傳輸至用戶端以更新本端安裝之用戶端應用程式,而非預封裝HTML頁面及將HTML頁面傳輸至用戶端。
圖5說明與對預安裝之應用程式之更新頁面請求相關聯的HTML頁面之實例,該預安裝之應用程式已由線上商店或商場之使用者帳戶採用或與該使用者帳戶相關聯。HTML頁面450包括「updates」連結451,該連結451可由
使用者選擇以請求更新頁面。「Updates」連結451可位於選單列上,該選單列具有諸如「featured」、「top charts」、「categories」及「purchases」之其他連結以向使用者提供存取應用程式管理程式之不同特徵的便利且迅速之方法。在一些實例中,表示「updates」連結451之圖示可包括數字,該數字指定儲存於用戶端裝置中之具有可用更新的應用程式之數目。圖示中之數字可在使用者選擇「updates」標籤連結451之前經由伺服器與用戶端裝置之間的週期性通信產生。
舉例而言,用戶端裝置可週期性地與伺服器通信且擷取具有可用更新之經儲存之應用程式的最新版本號碼。在此實例中,已選擇「updates」連結451,且包括可用更新之一應用程式呈現於HTML頁面450內。一應用程式係藉由描述該應用程式之應用程式描述457呈現。應用程式描述457可包括應用程式之名稱、應用程式之作者、應用程式之版本號碼、應用程式之發行日期,或與應用程式相關聯之其他資訊。應用程式描述457可進一步包括提供應用程式之識別碼的圖示455,及在該應用程式之此更新版本中實施之改變的概要459。此可將資訊提供給使用者,以使得使用者可作出關於其是否希望升級之旁徵博引的決策。HTML頁面450亦包括可選擇連結461,該可選擇連結461可在使用者希望接收應用程式更新的情況下由使用者選擇。可用更新之數目顯示於標題453處。標題453經組態以提供使用者可迅速判定可用更新之數目的另一便利位置。在一
些實例中,HTML頁面450亦可包括與標題453鄰接之可選擇連結,其用於更新具有可用更新之所有應用程式。
返回圖4,用戶端接收經傳輸之HTML頁面且將該HTML頁面呈現給使用者(411)。如圖5中所論述,HTML頁面呈現圖形使用者介面,該圖形使用者介面列出具有可用更新之應用程式、該等應用程式之描述及可由使用者選擇以授權應用程式之更新的一或多個連結。用戶端可接收更新應用程式之使用者授權(413)。若已接收使用者授權,則用戶端可在應用程式可更新之前判定該應用程式是否需要採用(415)。此判定可包括檢查安裝於用戶端上之應用程式的收據以判定該收據是否為存根收據。若該收據為存根收據,則與存根收據相關聯之應用程式為可能尚未由使用者帳戶採用的預安裝之應用程式。因此,需要使用者授權,且用戶端可將請求使應用程式由使用者帳戶採用或使應用程式與使用者帳戶相關聯之使用者授權的HTML頁面呈現給使用者(417)。使用者授權可涉及個人資訊跨越通信網路之傳輸。出於私密原因,HTML頁面告知使用者個人資訊將在授權程序期間發送且請求權限以跨越通信網路傳輸此個人資訊。
圖6說明請求採用應用程式之使用者授權之HTML頁面的實例,該等應用程式可能已在購買計算裝置時統整及/或預安裝。HTML頁面470為將具有可用更新之四個應用程式呈現給使用者的更新頁面。因而,「updates」連結471之圖示併有數字「4」。在此實例中,使用者已選擇經由
「update all」連結475更新所有應用程式。然而,在其他實例中,使用者亦可藉由選擇「update」連結476、477、478或479中之一者來選擇更新單一應用程式。具有可用更新之應用程式包括預安裝之應用程式472及經購買之應用程式473。在一些實例中,在此階段,在呈現預安裝之應用程式及經購買之應用程式方面無區別。然而,一旦使用者選擇更新預安裝或以其他方式未與使用者帳戶連結之應用程式,HTML頁面470便將提示480呈現給使用者。在圖7中更詳細地描述提示480。
圖7說明請求採用應用程式之使用者授權之HTML頁面的另一實例。當使用者選擇更新預安裝於電腦上且有可能尚未與使用者帳戶相關聯之應用程式或簡單地選擇更新尚未與使用者帳戶相關聯之經獲取之應用程式時,將亦稱為授權提示之提示480呈現給使用者。在此實例中,提示480包括圖示481、登錄482、密碼483、密碼輔助484、描述485、說明(help)連結486、帳戶建立487、取消488及登入489。描述485提供文字資訊以告知使用者:若使用者需要更新該等應用程式,則預安裝(亦即,統整)於此電子裝置上之應用程式將要與使用者帳戶相關聯。描述485亦可告知使用者:為採用該等應用程式,與電子裝置相關聯之唯一硬體識別符將發送至伺服器以判定是否應授權應用程式採用。圖示481可用以加商標於(brand)應用程式管理程式之應用程式更新功能。登錄482及密碼483可指定使用者帳戶,使用者希望預安裝之應用程式與該使用者帳戶相關
聯。密碼輔助484可由需要關於密碼之輔助的使用者選擇。一旦已鍵入所要使用者帳戶且已鍵入正確密碼,使用者便可藉由選擇登入489開始採用程序。若使用者不具有使用者帳戶或使用者希望使預安裝之應用程式與新帳戶相關聯,則使用者可選擇帳戶建立487。若使用者希望取消且不更新應用程式,則使用者可選擇取消488。替代地,若使用者需要關於以上所描述之任何元素的更詳細描述,則使用者可選擇說明連結486。在HTML頁面正請求使用者授權以關聯未預安裝於電子裝置上但替代地由電子裝置單獨獲取之應用程式的其他實例中,可變更描述485以將適當訊息輸送至使用者。舉例而言,描述485可陳述「To receive future updates,applications 'X','Y',and 'Z' will be assigned to this apple ID.A unique identifier stored on your computer must be sent to Apple to verify eligibility」。
返回圖4,用戶端可接收採用應用程式之使用者授權(419)。此使用者授權可藉由使用者將使用者帳戶及密碼鍵入至由用戶端呈現之如圖7中所描述的提示中而接收。一旦用戶端已接收使用者授權,用戶端便可繼續應用程式之採用(421)。以下在圖12中描述使應用程式由使用者帳戶採用之例示性程序。在一些實例中,所有預安裝之應用程式必須同時與使用者帳戶相關聯。因此,使用者不能選擇性地將與電子裝置相關聯之一預安裝之應用程式與一使用者帳戶連結,且不能選擇性地將與該電子裝置相關聯之另一預安裝之應用程式與另一使用者帳戶連結。同時採用電子
裝置上之所有預安裝之應用程式可簡化管理採用程序中之計算耗用,此係因為與電子裝置相關聯之唯一硬體識別符可足以通知伺服器預安裝之應用程式已被採用。在其他實例中,可選擇性地使電子裝置上之預安裝之應用程式與多個帳戶相關聯。因此,第一預安裝之應用程式可與第一電子裝置相關聯,而第二預安裝之應用程式可與第二電子裝置相關聯。然而,在伺服器上管理預安裝之應用程式可能需要儲存電子裝置之唯一硬體識別符加上已採用之預安裝之應用程式。此等實例亦適用於與電子裝置之購買分離地獲取的應用程式。舉例而言,贈送且安裝於電子裝置上之應用程式之集束可個別地或作為群組與使用者帳戶相關聯。
圖8說明用於處理購買頁面請求之例示性方法。說明由用戶端及伺服器執行之動作的方法500可經組態以管理在購買頁面請求期間用戶端與伺服器之間的通信。由伺服器執行之動作可由儲存於位於伺服器側上之散佈中心或其他組件上的散佈程式執行,而由用戶端執行之動作可由儲存於用戶端側之電子裝置上的應用程式管理程式執行。在一些實例中,儲存於散佈中心上之散佈程式及儲存於電子裝置上之應用程式管理程式可經組態以在更新頁面請求期間亦執行圖4之方法400。方法500可以使用者在由用戶端裝置供應之圖形使用者介面中選擇購買標籤連結開始。例示性購買標籤連結可為圖9中之連結551。在用戶端接收到對購買頁面之使用者請求(501)後,用戶端即可執行搜尋或查
詢以查找應用程式資訊。在此例示性方法中,應用程式資訊可包括資訊清單及/或收據(503)。在其他實例中,應用程式資訊可包括尚未與使用者帳戶相關聯之應用程式或套裝軟體,其中使用者帳戶具有套裝軟體之所有權。該所有權可為權利證明,諸如數位收據。在一些實例中,該資訊清單可類似於或實質上類似於圖3之資訊清單340。搜尋或查詢可由可用於用戶端上之一或多個程式或功能執行。在一些例子中,可將應用程式資訊作為軟體採用請求來傳輸至伺服器(505),該應用程式資訊可包括資訊清單、收據(真實收據及存根收據)、使用者帳戶資訊及其他資訊(諸如,尚未採用之應用程式的權利證明或所有權)。出於產生購買頁面之目的,將應用程式資訊傳輸至伺服器505,該購買頁面告知使用者已安裝之應用程式、可用於安裝之應用程式及可採用之應用程式。經傳輸之應用程式資訊可取決於使用者是否已在用戶端上登入。舉例而言,使用者帳戶資訊為可存取的且可在使用者在用戶端上登入的情況下作為應用程式資訊之部分而傳輸。如以上所論述,使用者帳戶資訊可包括關於與使用者帳戶相關聯之應用程式的資訊。類似地,收據可含有關於與正執行用戶端之電子裝置相關聯之應用程式的資訊。資訊清單可包括最初預安裝於電子裝置上之應用程式的資訊,或使用者具有所有權但尚未安裝於使用者裝置上或與使用者帳戶相關聯之應用程式的資訊。此等資訊僅為例示性類型之應用程式資訊,此係因為亦可將其他類型之應用程式傳輸至伺服器以用於產
生購買頁面。
伺服器接收經傳輸之應用程式資訊(亦即,資訊清單、收據、使用者帳戶及其他使用者帳戶資訊),且基於所接收之資訊產生應用程式之一或多個清單(507)。應用程式清單及用以產生應用程式清單之程序可取決於所接收之資訊而變化。第一應用程式清單可包括安裝於用戶端之電子裝置上的應用程式。第二應用程式清單可包括與使用者帳戶相關聯且可安裝於用戶端之電子裝置上的應用程式。第三應用程式清單可包括有可能與使用者帳戶連結之應用程式。第三清單中之應用程式可包括預安裝於用戶端之電子裝置上的應用程式及/或用戶端具有所有權但尚未採用或安裝之應用程式。亦可產生其他應用程式清單,諸如尚未與使用者帳戶相關聯之經購買或以其他方式獲取的應用程式。取決於由伺服器接收之應用程式資訊,可產生以上所描述之應用程式清單中的一或多者。在一些實例中,應用程式清單之產生可涉及存取諸如圖2中之應用程式資料庫220的應用程式資料庫。伺服器可基於所產生之應用程式清單產生HTML頁面(508)。HTML頁面之產生可包括存取應用程式資料庫以接收與應用程式清單中之應用程式相關聯的後設資料。舉例而言,後設資料可包括應用程式之名稱、應用程式之描述、應用程式之版本號碼、應用程式之購買資料、與應用程式相關聯之映像,及其他資訊。一旦產生了HTML頁面,伺服器便將HTML頁面傳輸至用戶端(509)。用戶端隨後將該HTML頁面呈現給使用者(511)。取
決於使用者是否已在用戶端上登入,將不同資訊呈現給使用者。
圖9說明當使用者未登入時與購買頁面請求相關聯之HTML頁面的實例。在此實例中,HTML頁面550向使用者呈現可用於採用之應用程式之清單557。如分別由文字558及559所說明,在可用於採用之三個應用程式當中,應用程式「iMovie」及「GarageBand」具有可用更新。HTML頁面550包括「purchases」連結551。在一些實例中,「purchases」連結551可與圖5之「updates」連結451相同地或實質上相同地起作用。HTML頁面550進一步包括標題553,標題553告知使用者可用於採用之應用程式的數目。描述555向使用者提供採用程序之解釋,希望輔助使用者判定其是否希望採用應用程式。HTML頁面550亦包括指令552,指令552用以告知使用者:使用者必須登入其使用者帳戶以接收關於與其使用者帳戶相關聯之購買的資訊。在此實例中,HTML頁面550包括一「accept」連結554,當由使用者選擇時,該連結554起始採用程序。在其他實例中,HTML頁面550可包括用於可用於採用之每一應用程式的「accept」連結,因此允許使用者選擇接受可用於採用之單一應用程式、可用於採用之多個應用程式或可用於採用之所有應用程式。使用者可經由觸控式螢幕、滑鼠點選、鍵盤或其他使用者輸入裝置來選擇「accept」連結554。
圖10說明當使用者登入時與購買頁面請求相關聯之
HTML頁面的另一實例。HTML頁面560將兩個應用程式清單呈現給使用者。在此實例中,應用程式清單562之呈現包括可用於採用之應用程式,而應用程式清單564之呈現包括先前已購買之應用程式。該兩個應用程式清單在HTML頁面560之獨立且單獨之部分中呈現。應用程式清單564之呈現包括與先前購買之應用程式相關聯的後設資料,諸如應用程式之名稱、與應用程式相關聯之映像、軟體供應商、購買日期及狀態566。狀態566可經組態以顯示經購買之應用程式的當前狀態。舉例而言,當應用程式目前安裝於用戶端之電子裝置中時,狀態566可處於「已安裝狀態」。當在此狀態下時,狀態566可經組態以顯示文字「INSTALLED」。在此實例中,四個經購買之應用程式皆安裝於用戶端之電子裝置中。作為另一實例,當應用程式經購買但未安裝於用戶端之電子裝置中時,狀態566可處於「安裝狀態」。舉例而言,應用程式可能尚未下載至此裝置或該應用程式可能已選擇性地自裝置刪除。當在此狀態下時,狀態566可經組態以顯示文字「INSTALL」。此外,當處於「安裝狀態」下時,狀態566可包括使用者可選擇連結。選擇該使用者可選擇連結導致將應用程式下載至電子裝置且安裝。
返回圖8,用戶端可接收使用者輸入作為採用應用程式之請求(513)。在一些實例中,該使用者輸入可為選擇圖9之「accept」連結554。用戶端可請求將應用程式連結至使用者帳戶之使用者授權(515)。在圖11中說明含有授權提示
之HTML頁面的實例,該授權提示用於請求將應用程式連結至使用者帳戶之使用者授權。
圖11說明包括授權提示之與購買頁面請求相關聯之HTML頁面的另一實例。當使用者選擇接受預安裝之應用程式之採用時,HTML頁面570可包括授權提示575。可包括授權提示575作為來自伺服器之經傳輸HTML頁面的部分,且在使用者選擇接受預安裝之應用程式之採用之後將授權提示575呈現給使用者。在一些實例中,授權提示575可與圖7之授權提示480相同或實質上類似。
返回圖8,用戶端可接收將應用程式連結至使用者帳戶之使用者授權。該使用者帳戶為在使用者授權期間鍵入之使用者帳戶。舉例而言,使用者可鍵入將與應用程式相關聯之使用者帳戶的使用者名稱及密碼。在用戶端接收使用者授權之後,用戶端可繼續應用程式之採用(519)。以下在圖12中描述使應用程式由使用者帳戶採用之例示性程序。在一些實例中,所有預安裝之應用程式必須同時與使用者帳戶相關聯。因此,使用者不能選擇性地將與電子裝置相關聯之一預安裝之應用程式與一使用者帳戶相關聯,且不能選擇性地使與該電子裝置相關聯之另一預安裝之應用程式與另一使用者帳戶相關聯。同時採用電子裝置上之所有預安裝之應用程式可簡化管理採用程序中的計算耗用,此係因為與電子裝置相關聯之唯一硬體識別符可足以通知伺服器預安裝之應用程式已被採用。在電子裝置上之預安裝之應用程式可選擇性地與多個帳戶相關聯的其他實例中,
除儲存電子裝置之唯一硬體識別符以外,在伺服器上管理預安裝之應用程式可能亦需要儲存已採用之預安裝之應用程式。
圖12說明用於將預安裝之應用程式連結至使用者帳戶的例示性方法。說明在用戶端與伺服器之間執行之通信協定的方法600可經組態以管理將預安裝之應用程式連結至使用者帳戶的程序。由伺服器執行之動作可由伺服器側上之散佈中心或其他組件上的程式執行,而由用戶端執行之動作可由儲存於用戶端之電子裝置上的應用程式管理程式執行。應用程式管理程式可經組態以安裝、刪除、維護或以其他方式管理儲存於用戶端上之軟體應用程式。在一些實例中,儲存於散佈中心上之散佈程式及儲存於電子裝置上之應用程式管理程式可經組態以亦執行圖4之方法400及/或圖5之方法500。在一些實例中,方法600可在圖4之「繼續應用程式採用」(421)或圖8之「繼續應用程式採用」(519)之後執行。
方法600可產生唯一硬體識別符(620)。該唯一硬體識別符可充當應用程式之有效所有權或權利之數位收據。該唯一硬體識別符可自組合對電子裝置特定之一或多個識別符而產生。舉例而言,唯一硬體識別符可基於與電子裝置之硬體組件相關聯的一或多個識別符。因為硬體組件之識別符為唯一的,所以沒有兩個唯一硬體識別符會相同。作為一實例,可藉由組合裝置之邏輯板序號與裝置之乙太網路硬體位址來產生唯一硬體識別符。可使用串連、雜湊、編
碼方案或其他資料調處演算法來組合邏輯板序號及乙太網路硬體位址。可將唯一硬體識別符作為使預安裝之應用程式與使用者帳戶相關聯之請求的部分自用戶端傳輸至伺服器(630)。在可選擇性地採用預安裝之應用程式的其他實例中,亦將與預安裝之應用程式相關聯的後設資料自用戶端傳輸至伺服器。後設資料將允許伺服器識別使用者正試圖由使用者帳戶採用之選定預安裝之應用程式的詳細資料提供至伺服器。在伺服器接收唯一硬體識別符及(視情況)後設資料之後,伺服器可藉由判定預安裝之應用程式是否已與使用者帳戶連結來驗證權利證明(640)。伺服器可藉由檢查唯一性表以查找唯一硬體識別符來判定應用程式是否已連結。因為唯一性表儲存含有已採用預安裝之應用程式的電子裝置之唯一硬體識別符的條目,所以未在表中找到之唯一硬體識別符表示電子裝置尚未與其預安裝之應用程式中的任一者相關聯。若方法600允許預安裝之應用程式的選擇性採用,則判定可包括查詢唯一性表以查找與唯一硬體識別符相關聯之條目。若找到唯一硬體識別符,則判定可評估具有預安裝之應用程式之後設資料的條目以判定選定預安裝之應用程式先前是否已被採用。
若自搜尋(亦即,查詢)唯一性表判定應用程式先前已被採用,則將錯誤傳輸回至用戶端(641)。用戶端接收該錯誤且向使用者呈現應用程式已被採用的警告(642)。圖13說明採用警告之實例。警告700通知使用者:因為使用者希望與其使用者帳戶相關聯的一或多個應用程式已指派給不同
使用者帳戶,所以不能指派該等預安裝之應用程式。另一方面,若自搜尋唯一性表判定應用程式先前未被採用,則伺服器可執行例行性(sanity)檢查以判定預安裝之應用程式是否為電子裝置之原始或預設組態的部分(650)。換言之,伺服器判定電子裝置是否係自製造商組態及遞送而安裝有預安裝之應用程式。此例行性檢查防止使用者將最初安裝於一電子裝置上之預安裝之應用程式複製至另一電子裝置及試圖使非法複本與使用者帳戶相關聯。伺服器可依據唯一硬體識別符來查詢組態伺服器以接收與該唯一硬體識別符相關聯之電子裝置之原始組態。可查驗原始組態以判定預安裝之應用程式的清單。可將預安裝之應用程式的此清單與使用者正試圖採用之應用程式比較,以判定彼應用程式是否可用於採用。在其他實例中,可將用以查詢以查找原始組態之資料庫的複本儲存於散佈中心中,因此允許唯一硬體識別符之評估完全在散佈中心中執行。此情形可減少至組態伺服器之網路訊務。
若判定使用者希望採用之應用程式並非電子裝置之原始組態的部分,則可將錯誤訊息傳輸至用戶端(651)。一旦用戶端接收到該錯誤訊息,用戶端便可向使用者呈現電子裝置不適合採用之警告(642)。圖14說明採用警告之另一實例。警告750通知使用者:因為電子裝置(本文中稱為「Mac」)不適合使預安裝之應用程式與使用者帳戶相關聯,所以不能將應用程式指派給使用者帳戶。在其他實例中,警告750可包括出於如下目的而提供之圖式或其他句
子:告知使用者電子裝置最初並未組態有預安裝之應用程式。另一方面,若判定使用者希望採用之應用程式為電子裝置之原始組態的部分,則可執行額外例行性檢查(若存在)。一旦伺服器已驗證預安裝之應用程式可連結至使用者帳戶,伺服器便可更新儲存於伺服器上之唯一性表及使用者帳戶(660),以指示電子裝置之預安裝之應用程式已被採用(且因此不能由另一使用者帳戶採用)。如以上所論述,已採用之預安裝之應用程式為電子裝置之現與使用者帳戶相關聯的預安裝之應用程式,且因此與該應用程式相關聯之更新及重新下載可下載至與使用者帳戶相關聯之電子裝置。伺服器可將核准訊息傳輸至用戶端以告知用戶端請求經核准(670)。該核准訊息告知或通知用戶端:因為連結請求已評估且視為真實請求,所以在伺服器上預安裝之應用程式現與使用者帳戶相關聯。用戶端接收核准訊息且將預安裝之應用程式與儲存於用戶端上之使用者帳戶連結(680)。在一些實例中,用戶端亦可藉由自資訊清單移除與已與使用者帳戶連結之預安裝之應用程式相關聯的後設資料來更新儲存於電子裝置上之資訊清單。移除與預安裝之應用程式相關聯的後設資料可藉由使經執行以判定應用程式是否可採用的檢查最少而簡化採用程序。用戶端可接著將請求傳輸至散佈中心或伺服器之其他組件以下載應用程式(690)。
方法600亦可經組態而用於後安裝之應用程式(亦即,由使用者安裝之應用程式)的採用。後安裝之應用程式包括
在使用者之裝置已離開製造商之後或在該裝置已由使用者購買之後已安裝於該裝置上的經贈送、購買、兌換或以其他方式獲取之應用程式。舉例而言,替代產生唯一硬體識別符(620),方法600可產生與應用程式相關聯之唯一識別符。該唯一識別符可為用以展示應用程式之權利證明或購買證明的與應用程式相關聯之後設資料。該唯一識別符可儲存於應用程式之後設資料中,且隨後由用戶端裝置擷取。或者,該唯一識別符可基於應用程式之後設資料而產生。舉例而言,該唯一識別符可由以下各者導出:應用程式之唯一或非唯一收據、與接收應用程式有關之後設資料(諸如,獲取應用程式之日期及/或位置)、與用戶端裝置相關聯之唯一識別符,及/或與應用程式或用戶端裝置相關聯之其他後設資料。
在一些實例中,通信協定可取決於唯一識別符是與預安裝之應用程式(亦即,由製造商安裝之應用程式)抑或後安裝之應用程式(亦即,由使用者安裝之應用程式)相關聯。舉例而言,在自用戶端接收之唯一識別符與後安裝之應用程式相關聯且因此並非電子裝置之原始組態的部分時,通信協定可跳過確認應用程式為電子裝置之原始組態的部分(650)。實情為,伺服器可藉由比較唯一識別符與有效唯一識別符之資料庫來驗證應用程式之權利證明或所有權。此情形可允許伺服器在應用程式之有效複本與無效複本之間進行區別及區分。一旦驗證了權利證明,則採用應用程式作為使用者帳戶之部分。為了判定應用程式是預安裝抑或
後安裝,伺服器可分析旗標或與唯一識別符相關聯之其他後設資料。
在另外其他實例中,通信協定可取決於自用戶端接收之唯一識別符是否基於與用戶端電子裝置相關聯之後設資料。舉例而言,由伺服器存取以判定應用程式是否已連結的資料庫或表可取決於唯一識別符。可針對與用戶端電子裝置相關聯之唯一識別符來由伺服器存取及更新第一資料庫。第一資料庫可基於電子裝置之硬體而鍵控且可搜尋。可針對不與用戶端裝置相關聯之唯一識別符來由伺服器存取及更新第二資料庫。換言之,此等唯一識別符僅基於與應用程式相關聯之權利證明,且因此,搜尋第二資料庫將基於權利證明或權利證明之某一變化。
圖15說明用於電子裝置上之恢復模式的例示性程序。大體而言,恢復模式可允許電子裝置解決應用程式或甚至作業系統之內部嚴重錯誤。在恢復整個作業系統之極端狀況下,此方法可甚至重新格式化儲存單元且重新安裝作業系統。取決於恢復模式之特定實施,重新安裝之作業系統可變化。作為一實例,重新安裝之作業系統可為最初安裝於電子裝置上之作業系統,其可接著經手動及/或自動更新。作為另一實例,重新安裝之作業系統可併有自最初安裝之作業系統以來已發行的一或多個更新。在另外其他實例中,可重新安裝來自製造商之最新可用作業系統。大體而言,恢復模式僅重新安裝作業系統而不重新安裝預安裝之應用程式。出於此原因,尚未與使用者帳戶相關聯或連
結之預安裝之應用程式可丟失。程序800藉由在恢復模式期間自組態伺服器擷取資訊清單來解決此問題。
程序800可藉由進入恢復模式開始(820)。進入恢復模式可觸發自製造商下載基本作業系統。該基本作業系統可經組態以產生唯一硬體識別符(830)。可使用以上所描述之方法中的一者產生該唯一硬體識別符。一旦產生了唯一硬體識別符,基本作業系統便可將該唯一硬體識別符傳輸至組態伺服器(840)。基於所接收之唯一硬體識別符,組態伺服器可傳回資訊清單,該資訊清單包括預安裝於電子裝置上之應用程式及彼等應用程式之版本號碼。資訊清單亦可包括電子裝置之所有者具有所有權的其他應用程式。在一些實例中,通信伺服器可與散佈伺服器通信以判定電子裝置是否已採用該等應用程式。若在散佈中心之唯一性表中找到該唯一硬體識別符,則電子裝置之預安裝之應用程式中的一或多者已被採用。因此,通信伺服器可傳回空的資訊清單或不包括已採用之特定預安裝之應用程式的資訊清單。此情形可使得當預安裝之應用程式已採用時最少發生購買頁面請求將該等預安裝之應用程式呈現給使用者的情況。在散佈中心儲存組態資料庫之本端複本的其他實例中,可將唯一硬體識別符傳輸至散佈中心而非組態伺服器。藉由使用唯一硬體識別符,散佈中心可判定預安裝之應用程式及在彼等應用程式當中已與使用者帳戶相關聯之應用程式。
組態伺服器(或散佈中心)可傳回伴隨電子裝置之作業系
統的版本號碼及基於電子裝置之預安裝之應用程式的資訊清單(850)。在其他實例中,資訊清單亦可包括電子裝置之後安裝之應用程式(850),該等後安裝之應用程式尚未與使用者帳戶連結。當電子裝置安裝尚未與使用者帳戶相關聯之應用程式時,儲存於組態伺服器上之資訊清單可週期性地更新。此情形可出於多種原因而發生,諸如網路故障、伺服器故障或使用者選擇在此時間點不使應用程式與使用者帳戶相關聯之選項。將作業系統之版本號碼傳輸至作業系統伺服器(860),該作業系統伺服器又將原始作業系統傳輸至電子裝置。電子裝置接收原始作業系統(870)且視情況安裝原始作業系統。電子裝置現包括原始作業系統之最新複本及基於電子裝置之預安裝之應用程式的資訊清單。若使用者尚未使預安裝之應用程式與使用者帳戶相關聯,則使用者可藉由如以上所描述選擇購買頁面連結而進行此操作。
在本發明之範疇內之實施例亦可包括用於攜載或儲存有電腦可執行指令或資料結構之有形及/或非暫時性電腦可讀儲存媒體。此等非暫時性電腦可讀儲存媒體可為可由通用或專用電腦(包括如以上所論述之任何專用處理器的功能設計)存取之任何可用媒體。藉由實例且非限制,此等非暫時性電腦可讀媒體可包括RAM、ROM、EEPROM、CD-ROM或其他光碟儲存器、磁碟儲存器或其他磁性儲存裝置,或可用以攜載或儲存呈電腦可執行指令、資料結構或處理器晶片設計之形式之所要程式碼構件的任何其他媒
體。當經由網路或另一通信連接(固線式連接、無線連接或其組合)將資訊傳送或提供至電腦時,該電腦將該連接恰當地視為電腦可讀媒體。因此,將任何此種連接恰當地稱為電腦可讀媒體。以上各者之組合亦應包括於電腦可讀媒體之範疇內。
電腦可執行指令包括(例如)使通用電腦、專用電腦或專用處理裝置執行某一功能或功能群組之指令及資料。電腦可執行指令亦包括由處於獨立或網路環境中之電腦執行的程式模組。大體而言,程式模組包括執行特定任務或實施特定抽象資料類型之常式、程式、組件、資料結構、物件及專用處理器之設計中所固有的功能等。電腦可執行指令、相關聯之資料結構及程式模組表示用於執行本文中所揭示之方法之步驟的程式碼構件之實例。此等可執行指令或相關聯之資料結構的特定序列表示用於實施此等步驟中所描述之功能的相應動作之實例。
熟習此項技術者將瞭解,可藉由許多類型之電腦系統組態在網路計算環境中實踐本發明之其他實施例,該等電腦系統組態包括個人電腦、手持型裝置、多處理器系統、基於微處理器或可程式化之消費型電子裝置、網路PC、小型電腦、大型電腦及其類似者。實施例亦可在分散式計算環境中實施,在分散式計算環境中,藉由本端及遠端處理裝置來執行任務,本端及遠端處理裝置係經由通信網路而鏈接(藉由固線式鏈路、無線鏈路或其組合)。在分散式計算環境中,程式模組可位於本端記憶體儲存裝置及遠端記憶
體儲存裝置兩者中。
上文所描述之各種實施例僅藉由說明而提供且不應解釋為限制本發明之範疇。熟習此項技術者將易於認識到,可在不遵循本文中所說明及描述之實例實施例及應用程式的情況下且在不脫離本發明之精神及範疇的情況下,對本文中所描述之原理進行各種修改及改變。
100‧‧‧系統/通用計算裝置
110‧‧‧系統匯流排
120‧‧‧中央處理單元(CPU)或處理器
122‧‧‧快取記憶體
130‧‧‧系統記憶體
140‧‧‧唯讀記憶體(ROM)
150‧‧‧隨機存取記憶體(RAM)
160‧‧‧儲存裝置/硬碟
162‧‧‧模組1/軟體模組
164‧‧‧模組2/軟體模組
166‧‧‧模組3/軟體模組
170‧‧‧顯示器/輸出裝置
180‧‧‧通信介面
190‧‧‧輸入裝置
200‧‧‧散佈系統
210‧‧‧散佈中心/散佈伺服器
211‧‧‧唯一性伺服器
220‧‧‧應用程式資料庫
230‧‧‧組態伺服器
240‧‧‧伺服器側
250‧‧‧網際網路
260‧‧‧計算裝置
261‧‧‧應用程式
270‧‧‧計算裝置
271‧‧‧應用程式
280‧‧‧攜帶型裝置
281‧‧‧應用程式
290‧‧‧用戶端側
291‧‧‧使用者帳戶
300‧‧‧主從式系統
301‧‧‧更新頁面請求
302‧‧‧購買頁面請求
303‧‧‧超文字標記語言(「HTML」)頁面
310‧‧‧預安裝之應用程式
311‧‧‧存根收據A
320‧‧‧預安裝之應用程式
321‧‧‧存根收據B
330‧‧‧應用程式
331‧‧‧真實收據
340‧‧‧資訊清單
350‧‧‧用戶端裝置
360‧‧‧伺服器
400‧‧‧說明由用戶端及伺服器執行之動作的方法
450‧‧‧超文字標記語言(HTML)頁面
451‧‧‧「Updates」連結
453‧‧‧標題
455‧‧‧圖示
457‧‧‧應用程式描述
459‧‧‧概要
461‧‧‧可選擇連結
470‧‧‧超文字標記語言(HTML)頁面
471‧‧‧「Updates」連結
472‧‧‧預安裝之應用程式
473‧‧‧經購買之應用程式
475‧‧‧「update all」連結
476‧‧‧「update」連結
477‧‧‧「update」連結
478‧‧‧「update」連結
479‧‧‧「update」連結
480‧‧‧提示
481‧‧‧圖示
482‧‧‧登錄
483‧‧‧密碼
484‧‧‧密碼輔助
485‧‧‧描述
486‧‧‧說明連結
487‧‧‧帳戶建立
488‧‧‧取消
489‧‧‧登入
500‧‧‧說明由用戶端及伺服器執行之動作的方法
550‧‧‧超文字標記語言(HTML)頁面
551‧‧‧「purchases」連結
552‧‧‧指令
553‧‧‧標題
554‧‧‧「accept」連結
555‧‧‧描述
557‧‧‧應用程式之清單
558‧‧‧文字
559‧‧‧文字
560‧‧‧超文字標記語言(HTML)頁面
562‧‧‧應用程式清單
564‧‧‧應用程式清單
566‧‧‧狀態
570‧‧‧超文字標記語言(HTML)頁面
575‧‧‧授權提示
600‧‧‧說明在用戶端與伺服器之間執行之通信協定
的方法
700‧‧‧警告
750‧‧‧警告
800‧‧‧程序
圖1說明一例示性系統實施例;圖2說明一例示性應用程式散佈系統;圖3說明一例示性主從式系統;圖4說明用於處理更新頁面請求之一例示性方法;圖5說明與更新頁面請求相關聯之HTML頁面之一實例;圖6說明請求採用預安裝之應用程式的使用者授權之HTML頁面的一實例;圖7說明請求採用預安裝之應用程式的使用者授權之HTML頁面的另一實例;圖8說明用於處理購買頁面請求之一例示性方法;圖9說明當使用者未登入時與購買頁面請求相關聯之HTML頁面之一實例;圖10說明當使用者登入時與購買頁面請求相關聯之HTML頁面之另一實例;圖11說明包括授權提示之與購買頁面請求相關聯之HTML頁面的另一實例;圖12說明用於將預安裝之應用程式連結至使用者帳戶之
例示性方法;
圖13說明採用警告之一實例;
圖14說明採用警告之另一實例;及
圖15說明用於電子裝置上之恢復模式的例示性程序。
300‧‧‧主從式系統
301‧‧‧更新頁面請求
302‧‧‧購買頁面請求
303‧‧‧超文字標記語言(「HTML」)頁面
310‧‧‧預安裝之應用程式
311‧‧‧存根收據A
320‧‧‧預安裝之應用程式
321‧‧‧存根收據B
330‧‧‧應用程式
331‧‧‧真實收據
340‧‧‧資訊清單
350‧‧‧用戶端裝置
360‧‧‧伺服器
Claims (20)
- 一種用於將軟體應用程式連結至一使用者帳戶之方法,其包含:由一伺服器藉由判定已安裝於一第一用戶端裝置上之一應用程式經組態用於由一伺服器散佈來驗證該第一用戶端裝置上之該經安裝之應用程式係適合採用(adoption),其中該採用涉及將該使用者帳戶與該經安裝之應用程式相關聯;藉由該伺服器驗證該應用程式先前尚未被採用,其包括:自動地擷取一唯一識別符,該唯一識別符自與該經安裝之應用程式相關聯的後設資料(metadata)唯一地識別該經安裝之應用程式的一個別複本,及驗證該唯一識別符尚未與任何使用者帳戶相關聯;及自該伺服器將該經安裝之應用程式適合採用的一通知遞送至該第一用戶端裝置。
- 如請求項1之方法,其進一步包含藉由該伺服器使該應用程式為該使用者帳戶所採用,其中該採用組態該使用者帳戶以准許與該使用者帳戶相關聯之一或多個用戶端裝置具有關於該經採用之應用程式的特殊權限。
- 如請求項2之方法,其中該等特殊權限包括該應用程式之下載、重新下載及更新。
- 如請求項2至3中任一項之方法,其進一步包含:向該使用者帳戶註冊一第二用戶端裝置;及 將該經採用之應用程式傳輸至該第二用戶端裝置。
- 如請求項1至3中任一項之方法,其中該唯一識別符為該個別複本之一權利證明。
- 如請求項2至3中任一項之方法,其中該應用程式先前已安裝於與該使用者帳戶相關聯之一或多個用戶端裝置上。
- 如請求項1至3中任一項之方法,其中該方法係回應於一使用者請求而執行。
- 如請求項1至3中任一項之方法,其進一步包含:通知該用戶端裝置複數個應用程式可用於採用;及接受選擇該複數個應用程式中之至少一者用於採用的一輸入。
- 如請求項1至3中任一項之方法,其中自動地擷取該唯一識別符包含:查詢該伺服器上之一資料庫以查找該唯一識別符。
- 如請求項1至3中任一項之方法,其中採用套裝軟體進一步包含:基於該套裝軟體之一權利證明來更新一資料庫。
- 如請求項1至3中任一項之方法,其中該唯一識別符包含可自與該用戶端裝置相關聯之硬體導出之一值。
- 一種用於將軟體應用程式連結至一使用者帳戶之系統,其包含:一處理器;一儲存裝置; 一記憶體,其經組態以儲存用於控制該處理器執行包括以下各者之步驟的指令:由一伺服器藉由判定已安裝於一用戶端裝置上之一應用程式經組態用於由一伺服器散佈來驗證該用戶端裝置上之該經安裝之應用程式係適合採用,其中該採用涉及將該使用者帳戶與該經安裝之應用程式相關聯;藉由該伺服器驗證該應用程式先前尚未被採用,其包括:自動地擷取一唯一識別符,該唯一識別符自與該經安裝之應用程式相關聯的後設資料唯一地識別該經安裝之應用程式的一個別複本,及驗證該唯一識別符尚未與任何使用者帳戶相關聯;及自該伺服器將該經安裝之應用程式適合採用的一通知遞送至該用戶端裝置。
- 如請求項12之系統,其中該記憶體進一步包含用於藉由該伺服器使該應用程式為該使用者帳戶所採用的指令,其中該採用組態該使用者帳戶以准許與該使用者帳戶相關聯之一或多個用戶端裝置具有關於該經採用之應用程式的特殊權限。
- 如請求項13中任一項之系統,其中該等特殊權限包括該應用程式之下載、重新下載及更新。
- 如請求項12至14中任一項之系統,其中該記憶體進一步包含用於向該使用者帳戶註冊另一用戶端裝置及將該經 採用之應用程式傳輸至該另一用戶端裝置的指令。
- 如請求項12至14中任一項之系統,其中該應用程式先前已安裝於與該使用者帳戶相關聯之該一或多個用戶端裝置上。
- 如請求項12至14中任一項之系統,其中該記憶體進一步包含用於通知該用戶端裝置複數個應用程式可用於採用及接受選擇該複數個應用程式中之一者之一輸入的指令。
- 一種非暫時性電腦可讀記錄媒體,其儲存當由一計算裝置執行時使該計算裝置執行包含以下各者之步驟的指令:由一伺服器藉由判定已安裝於一用戶端裝置上之一應用程式經組態用於由一伺服器散佈來驗證該用戶端裝置上之該經安裝之應用程式適合採用,其中該採用涉及將一使用者帳戶與該經安裝之應用程式相關聯;藉由該伺服器驗證該應用程式先前尚未被採用,其包括:自動地擷取一唯一識別符,該唯一識別符自與該經安裝之應用程式相關聯的後設資料唯一地識別該經安裝之應用程式的一個別複本,及驗證該唯一識別符尚未與任何使用者帳戶相關聯;及自該伺服器將該經安裝之應用程式適合採用的一通知遞送至該用戶端裝置。
- 如請求項18之非暫時性電腦可讀記錄媒體,其中該等驗證該應用程式已安裝於一用戶端裝置上、驗證該應用程 式先前尚未被採用及遞送該通知的步驟係回應於一使用者請求而執行。
- 如請求項18至19中任一項之非暫時性電腦可讀記錄媒體,其進一步包含藉由該伺服器使該應用程式為該使用者帳戶所採用,其中該採用組態該使用者帳戶以准許與該使用者帳戶相關聯之一或多個用戶端裝置具有關於該經採用之應用程式的特殊權限。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/181,424 US9319406B2 (en) | 2011-07-12 | 2011-07-12 | System and method for linking pre-installed software to a user account on an online store |
US13/248,942 US10158635B2 (en) | 2011-07-12 | 2011-09-29 | System and method for linking pre-installed software to a user account on an online store |
US201261596928P | 2012-02-09 | 2012-02-09 | |
US13/436,609 US20130019237A1 (en) | 2011-07-12 | 2012-03-30 | System and method for linking pre-installed software to a user account on an online store |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201308237A TW201308237A (zh) | 2013-02-16 |
TWI599973B true TWI599973B (zh) | 2017-09-21 |
Family
ID=47625486
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101125195A TWI599973B (zh) | 2011-07-12 | 2012-07-12 | 用於將預安裝之軟體連結至一線上商店之一使用者帳戶之系統及方法 |
Country Status (8)
Country | Link |
---|---|
JP (1) | JP5595451B2 (zh) |
KR (1) | KR101439604B1 (zh) |
CN (2) | CN106096456B (zh) |
AU (1) | AU2012203903B2 (zh) |
BR (1) | BR102012017289B1 (zh) |
MX (1) | MX2012008138A (zh) |
NL (1) | NL2009157B1 (zh) |
TW (1) | TWI599973B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10325298B2 (en) * | 2013-01-22 | 2019-06-18 | General Electric Company | Systems and methods for a non-destructive testing ecosystem |
CN104468637B (zh) * | 2013-09-12 | 2018-08-31 | 阿里巴巴集团控股有限公司 | 一种下载以及安装客户端的方法和设备 |
KR102124330B1 (ko) * | 2013-11-19 | 2020-06-18 | 에스케이텔레콤 주식회사 | 어플리케이션 업데이트 방법 및 이를 지원하는 단말 |
US9626720B2 (en) | 2013-11-25 | 2017-04-18 | Apple Inc. | Linked user accounts |
US10255449B2 (en) | 2014-05-30 | 2019-04-09 | Apple Inc. | Permission request |
TWI602066B (zh) * | 2014-05-30 | 2017-10-11 | 宏碁股份有限公司 | 自動化程式下載方法與系統 |
CN104468514B (zh) * | 2014-10-31 | 2018-08-31 | 联想(北京)有限公司 | 信息处理方法、电子设备及服务器 |
JP6403583B2 (ja) * | 2015-01-21 | 2018-10-10 | キヤノン株式会社 | アップデートされたアプリケーションを配信する配信管理サーバーおよび配信管理方法 |
CN105893071A (zh) * | 2015-11-30 | 2016-08-24 | 乐视云计算有限公司 | 应用的在线调优方法及*** |
JP6419143B2 (ja) * | 2016-12-20 | 2018-11-07 | 株式会社ミロク情報サービス | 共通プログラム、データベース管理装置、及びデータベース管理方法 |
US10365931B2 (en) * | 2017-02-27 | 2019-07-30 | Microsoft Technology Licensing, Llc | Remote administration of initial computer operating system setup options |
KR102166336B1 (ko) * | 2017-05-15 | 2020-10-15 | 삼성전자주식회사 | 소프트웨어 플랫폼을 제공하는 서버 및 그 동작방법 |
JP6608878B2 (ja) * | 2017-07-19 | 2019-11-20 | ファナック株式会社 | アプリケーション販売管理サーバシステム |
CN111406257B (zh) * | 2018-11-02 | 2023-10-31 | 谷歌有限责任公司 | 用于认证的***和方法 |
CN109710284A (zh) * | 2018-11-16 | 2019-05-03 | 中天昱品科技有限公司 | 一种具有安全加密和数据压缩的充电桩远程升级方法 |
US20230177190A1 (en) * | 2021-12-03 | 2023-06-08 | Dell Products L.P. | Systems and methods for transferring information handling systems |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6324649B1 (en) * | 1998-03-02 | 2001-11-27 | Compaq Computer Corporation | Modified license key entry for pre-installation of software |
JP2002091595A (ja) * | 2000-09-11 | 2002-03-29 | Hitachi Ltd | ライセンス管理方法及びライセンス管理システム |
US20030084165A1 (en) * | 2001-10-12 | 2003-05-01 | Openwave Systems Inc. | User-centric session management for client-server interaction using multiple applications and devices |
JP2005284506A (ja) * | 2004-03-29 | 2005-10-13 | Matsushita Electric Ind Co Ltd | ダウンロードシステム及びダウンロードシステムを構成する機器、管理局、リムーバブルメディア |
US20060064488A1 (en) * | 2004-09-17 | 2006-03-23 | Ebert Robert F | Electronic software distribution method and system using a digital rights management method based on hardware identification |
CN100589096C (zh) * | 2004-12-02 | 2010-02-10 | 现时技术控股有限公司 | 在专用网络中管理未受保护和受保护的内容的设备和方法 |
JP2007265071A (ja) * | 2006-03-29 | 2007-10-11 | Jordan Kk | アプリケーション管理方法およびアプリケーション管理システム |
EP1901192A1 (en) * | 2006-09-14 | 2008-03-19 | British Telecommunications Public Limited Company | Mobile application registration |
US8566954B2 (en) * | 2008-02-08 | 2013-10-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatuses for authorising provision of indirected content associated with a presentity of a presence service |
US20090307682A1 (en) * | 2008-06-08 | 2009-12-10 | Sam Gharabally | Techniques for Acquiring Updates for Application Programs |
US8495190B2 (en) * | 2008-06-25 | 2013-07-23 | International Business Machines Corporation | Providing access by a client application program over an internet protocol (IP) network to a server application program instance |
JP2010049643A (ja) * | 2008-08-25 | 2010-03-04 | Sourcenext Corp | 情報処理システム、情報処理方法及びプログラム |
US8725839B2 (en) * | 2009-12-22 | 2014-05-13 | International Business Machines Corporation | Imposing pre-installation prerequisite checks on the install user to ensure a higher rate of installation success |
-
2012
- 2012-07-03 AU AU2012203903A patent/AU2012203903B2/en active Active
- 2012-07-09 NL NL2009157A patent/NL2009157B1/nl active
- 2012-07-10 JP JP2012154900A patent/JP5595451B2/ja active Active
- 2012-07-11 KR KR1020120075797A patent/KR101439604B1/ko active IP Right Grant
- 2012-07-12 BR BR102012017289-5A patent/BR102012017289B1/pt active IP Right Grant
- 2012-07-12 CN CN201610704211.2A patent/CN106096456B/zh active Active
- 2012-07-12 CN CN201210241398.9A patent/CN103207793B/zh active Active
- 2012-07-12 TW TW101125195A patent/TWI599973B/zh active
- 2012-07-12 MX MX2012008138A patent/MX2012008138A/es unknown
Also Published As
Publication number | Publication date |
---|---|
NL2009157A (en) | 2013-01-15 |
MX2012008138A (es) | 2013-09-03 |
TW201308237A (zh) | 2013-02-16 |
CN103207793A (zh) | 2013-07-17 |
KR101439604B1 (ko) | 2014-09-12 |
BR102012017289A2 (pt) | 2018-02-27 |
JP2013020621A (ja) | 2013-01-31 |
BR102012017289B1 (pt) | 2020-12-01 |
AU2012203903B2 (en) | 2015-03-12 |
CN103207793B (zh) | 2016-08-03 |
CN106096456A (zh) | 2016-11-09 |
CN106096456B (zh) | 2019-04-02 |
KR20130008480A (ko) | 2013-01-22 |
AU2012203903A1 (en) | 2013-01-31 |
NL2009157B1 (en) | 2017-11-08 |
JP5595451B2 (ja) | 2014-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI599973B (zh) | 用於將預安裝之軟體連結至一線上商店之一使用者帳戶之系統及方法 | |
US11025622B2 (en) | System and method for linking pre-installed software to a user account on an online store | |
US20130019237A1 (en) | System and method for linking pre-installed software to a user account on an online store | |
US9990475B2 (en) | Apparatus and method of in-application licensing | |
US7676436B2 (en) | Digital content distribution systems and methods | |
KR101361313B1 (ko) | 네트워크 기반 분배 시스템을 사용하여 인-애플리케이션 후속 특징을 액세스하는 애플리케이션 제품들 | |
KR100962747B1 (ko) | 하드웨어 자원의 시스템-내 재구성 | |
BRPI0720581A2 (pt) | Transferir programaticamente aplicativos entre aparelhos telefônicos com base em informações de licença | |
US20130124696A1 (en) | Application products with in-application subsequent feature access using network-based distribution system | |
US9886685B2 (en) | Distributed digital rights-managed file transfer and access control | |
WO2013188244A2 (en) | Application products with in-application subsequent feature access using network-based distribution system |