WO2015145905A1 - 追加ダウンロード管理システム、端末装置制御プログラム、端末装置および追加ダウンロード管理装置 - Google Patents

追加ダウンロード管理システム、端末装置制御プログラム、端末装置および追加ダウンロード管理装置 Download PDF

Info

Publication number
WO2015145905A1
WO2015145905A1 PCT/JP2014/084055 JP2014084055W WO2015145905A1 WO 2015145905 A1 WO2015145905 A1 WO 2015145905A1 JP 2014084055 W JP2014084055 W JP 2014084055W WO 2015145905 A1 WO2015145905 A1 WO 2015145905A1
Authority
WO
WIPO (PCT)
Prior art keywords
push notification
application program
terminal device
additional download
download
Prior art date
Application number
PCT/JP2014/084055
Other languages
English (en)
French (fr)
Inventor
由顕 伊藤
太志 横島
さや香 久保
政洋 諸富
Original Assignee
株式会社セガ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社セガ filed Critical 株式会社セガ
Publication of WO2015145905A1 publication Critical patent/WO2015145905A1/ja

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/77Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Definitions

  • the present invention relates to a technique for automatically downloading and updating a terminal device program and data.
  • Application programs are downloaded and installed for the first time from a store site that handles application programs supplied from multiple vendors (developers) at once. There is a method using a site. In this case, the latest application program is downloaded from the store site and updated by overwriting the previous application program. This method is performed using an update function provided by an OS (Operating System) of the terminal device.
  • OS Operating System
  • the operation of the application program to be updated accesses the site managed by the developer of the application program (game management server, etc. if it is a game application) and changes programs and data.
  • the site managed by the developer of the application program game management server, etc. if it is a game application
  • the latter method is more efficient than downloading the entire application program because only the program and data that need to be changed need be downloaded.
  • the application program inquires whether a predetermined site needs to be updated. As a result, when the update is necessary, the application program displays to the user that the update is necessary, and when the user instructs execution of the update, the application program accesses a predetermined site and executes the download and update.
  • the timing at which the user activates or activates the application program is the timing at which the application program is to be used. Therefore, by starting execution of the update, depending on the capacity of the program or data and the communication line speed You have to wait for a fixed time. Therefore, it is possible to reduce the willingness to start a game or the like immediately and stop using the application program.
  • Patent Documents 1 and 2 disclose techniques for automatically updating a program of a terminal device, but assume a situation where additional download and update are performed by the operation of an application program to be updated. It cannot be used as a reference.
  • the present invention has been proposed in view of the above-described conventional problems, and the object of the present invention is to make the user feel no waiting time in the situation where the update is performed by the operation of the application program to be updated. To provide a mechanism for performing additional downloads and updates of programs and data.
  • a push notification is sent to a terminal device, and indicates that an additional download is required for an application program installed in the terminal device.
  • Push notification requesting means for requesting transmission to the cloud service
  • push notification receiving means provided in the terminal device for receiving the push notification, and an application targeted based on application program specifying information included in the push notification
  • An application program specifying means provided in the terminal device for specifying a program
  • an information delivery means provided in the terminal device for transferring information indicating that additional download is necessary for the specified application program
  • FIG. 1 is a diagram showing a configuration example of a system according to an embodiment of the present invention.
  • the game application for performing a network game it cannot be overemphasized that it is applicable also to another application, for example, a news application etc.
  • the system includes a terminal device 1 (1A, 1B,...) Such as a smartphone, a mobile phone, and a PC operated by a user (player), a game server 3 that manages a game, and an operation of the game server 3.
  • Management terminal device 4 in which a push notification transmission instruction or the like is performed by a user, a push notification execution server 5 that executes a push notification provided as a cloud service, and mediation of a push notification request to the push notification execution server 5
  • the push notification management server 6 that performs the above is connected via a network 2 such as the Internet.
  • the push notification actively notifies the user's terminal device from the system side, and the user can acquire information in real time without any particular operation.
  • Many OSs such as smartphones have a push notification function built in, so that push notifications can be performed in cooperation with services on the cloud (APNs: Apple Push Notification Service, GCM: Google Cloud Messaging for Android, etc.) It has become.
  • the push notification execution server 5 provides such a push notification service.
  • the server designates a device token for identifying the user's terminal device and requests the push notification from a cloud service such as APNs, whereby the user's terminal device A push notification is sent to
  • the terminal device 1 is provided with an OS 11 and a game application 15.
  • the game application 15 is downloaded in advance from a store site (not shown) or the like and installed in the terminal device 1.
  • the OS 11 is provided with a push notification receiving unit 12, an application specifying unit 13, and an information delivery unit 14 as functional units.
  • the push notification receiving unit 12 has a function of receiving the push notification transmitted from the push notification execution server 5 via the network 2.
  • the push notification indicating that an additional download is necessary for the application program is assumed to be a screen-type push notification upon reception or a silent push notification with no sound effects. It may be a push notification accompanied by sound effect generation.
  • the application specifying unit 13 has a function of specifying a target application program based on application program specifying information included in the push notification received by the push notification receiving unit 12. If the application program cannot be started in conjunction with the push notification due to functional restrictions of the OS 11, it is identified as a sleep or active application program that is started as an active process. Is limited. Furthermore, when the application program in the active state does not correspond to the push notification, the specification is limited to the application program in the sleep state.
  • the information delivery unit 14 has a function of delivering information indicating that additional download is required for the application program specified by the application specification unit 13.
  • the application program needs to be started as an active process. Therefore, if it is not in a sleep state or an active state, it is assumed that it is allowed by the function of the OS 11. Assume that information indicating that an additional download is necessary is delivered after the corresponding application program is activated and put in the sleep state.
  • the game application 15 is provided with a user registration request unit 16, a device token acquisition request unit 17, a device token registration request unit 18, and a download / update unit 19 as functional units.
  • the user registration request unit 16 has a function of performing user registration with the game server 3 when the game application 15 is activated for the first time.
  • the device token acquisition request unit 17 has a function of making a device token acquisition request to the push notification execution server 5 every time the game application 15 is activated.
  • the device token is information for identifying the terminal device 1 that is a destination when a push notification transmission request is made to the push notification execution server 5. Since the device token is updated at a predetermined frequency, it is necessary to obtain it every time the game application 15 is activated.
  • the device token registration request unit 18 has a function of requesting registration of the device token acquired from the push notification execution server 5 to the push notification management server 6.
  • the download / update unit 19 When the download / update unit 19 receives information indicating that additional download is necessary from the information transfer unit 14, the download / update unit 19 accesses the predetermined game server 3 to download programs and data, and based on the information It has a function to update itself.
  • the game server 3 includes a user management database 31, a download data holding unit 32, a user registration unit 33, an information management unit 34, a push notification request unit 35, and a download data providing unit 36.
  • the user management database 31 has items (fields) such as “user ID”, “password”, “user attribute”, “language used”, “OS version”, “latest download incomplete”, and the like.
  • “User ID” is information for identifying a user.
  • “Password” is secret information used for user authentication.
  • “User attribute” is information such as the gender, age group, and residential area of the user.
  • “Use language” is information for identifying the use language on the game application 15 of the user.
  • OS version is information indicating the version number of the OS executing the game application 15 of the user.
  • “Latest download incomplete” is information indicating whether or not the latest download has already been performed by the user.
  • the download data holding unit 32 of the game server 3 is a part that holds and manages programs and data necessary for downloading.
  • the user registration unit 33 has a function of receiving a user registration request from the game application 15 of the terminal device 1 and performing a user registration process.
  • the information management unit 34 has a function of providing information managed in the game server 3 in response to a request from the management terminal device 4 or the like.
  • the push notification request unit 35 has a function of making a push notification transmission request to the push notification management server 6.
  • the push notification transmission request from the game server 3 may be performed by designating individual terminal devices, or may be a batch transmission request based on a user list. This request includes a case where transmission is performed immediately and a case where reservation is made by specifying a transmission date and time (distribution date and time).
  • the download data providing unit 36 has a function of providing the terminal device 1 with the download data held in the download data holding unit 32 in response to a request from the download / update unit 19 of the terminal device 1.
  • the management terminal device 4 includes a user list generation unit 41 and a push notification request unit 42.
  • the user list generation unit 41 has a function of acquiring information from the game server 3 as necessary, and generating a list of user IDs as transmission destinations of push notifications.
  • the push notification request unit 42 has a function of making a push notification transmission request to the push notification management server 6.
  • the push notification transmission request from the management terminal device 4 is a batch transmission request based on the user list. This request includes a case where transmission is performed immediately and a case where reservation is made by specifying a transmission date and time (distribution date and time).
  • the push notification management server 6 is provided with a device token management database 61, message reservation management information 62, a device token registration unit 63, a message management unit 64, and a push notification request unit 65.
  • the device token management database 61 includes items such as “application ID”, “user ID”, and “device token” as shown in FIG.
  • “App ID” is information for identifying an application.
  • the “user ID” is information for identifying the user, and the user ID stored in the game server 3 is a user ID that is permitted for push notification or sent from a terminal device that is permitted for push notification.
  • the received user ID is stored.
  • the “device token” is a device token issued from the push notification execution server 5 to the user.
  • the message reservation management information 62 includes items such as “message ID”, “message content”, “delivery reservation date / time”, and “not yet delivered”.
  • “Message ID” is information for identifying a message to be notified of push.
  • “Message content” is information about the content of a message or the content of a parameter.
  • “Delivery reservation date” is information on the date and time when the push notification is scheduled.
  • “Undelivered” is information indicating whether or not the corresponding push notification has already been performed.
  • the device token registration unit 63 of the push notification management server 6 has a function of performing registration in the device token management database 61 in response to a device token registration request from the terminal device 1.
  • the message management unit 64 has a function of receiving a push notification request from the game server 3 or the management terminal device 4 and registering the reservation in the message reservation management information 62 to manage the delivery timing.
  • the push notification request unit 65 has a function of requesting the push notification execution server 5 for a push notification requested from the game server 3 or the management terminal device 4.
  • FIG. 3 is a diagram illustrating a hardware configuration example of the terminal device 1.
  • the terminal device 1 includes a power supply system 101, a main system 102 including a processor 103, a memory controller 104, and a peripheral interface 105, and a storage unit 106.
  • the terminal device 1 also includes an external port 107, a high frequency circuit 108, an antenna 109, an audio circuit 110, a speaker 111, a microphone 112, a proximity sensor 113, and a GPS (Global Positioning System) circuit 114.
  • the terminal device 1 also includes an input / output (I / O) subsystem 115 including a display controller 116, an optical sensor controller 117, and an input controller 118, a touch-responsive display system 119, an optical sensor 120, and an input unit 121. And.
  • FIG. 4 is a diagram illustrating a hardware configuration example of the game server 3 and the like.
  • the game server 3, the management terminal device 4, the push notification execution server 5, and the push notification management server 6 include a CPU (Central Processing Unit) 302, ROM (Read Only Memory) 303 connected to the system bus 301, A RAM (Random Access Memory) 304 and an NVRAM (Non-Volatile Access Memory) 305 are provided. Further, the game server 3 and the like include an I / F (Interface) 306, an I / O (Input / Output Device) 307, an HDD (Hard Disk Drive) 308, and a NIC (Network Interface Card) connected to the I / F 306. 309, a monitor 310 connected to the I / O 307, a keyboard 311, a mouse 312 and the like. A CD / DVD (Compact Disk / Digital Versatile Disk) drive or the like can also be connected to the I / O 307.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • NVRAM Non-Volatile Access Memory
  • FIG. 5 is a sequence diagram illustrating a processing example of the above-described embodiment, and illustrates a processing example of user registration and device token acquisition / registration performed by the game application 15 of the terminal device 1 prior to push notification. is there.
  • the game application 15 is activated on the terminal device 1A (step S101), and thereafter, the user registration request unit 16 of the game application 15 makes a user registration request to the game server 3 (step S102).
  • the user registration may be performed once for the game application 15.
  • the user registration unit 33 of the game server 3 Upon receiving the user registration request, the user registration unit 33 of the game server 3 issues a user ID, a password, and the like and registers them in the user management database 31 according to a predetermined procedure (step S103), and the game application 15 of the terminal device 1A. (Step S104).
  • the user registration process is similarly performed from the game application 15 of the terminal device 1B.
  • step S111 when the game application 15 of the terminal device 1 is activated at an arbitrary timing (step S111), a device token acquisition request is made to the push notification execution server 5 from the device token acquisition request unit 17 of the game application 15 each time. (Step S112).
  • the push notification execution server 5 Upon receiving the device token acquisition request, the push notification execution server 5 issues a device token and registers it internally (step S113), and notifies the game application 15 of the terminal device 1A (step S114).
  • the device token registration request unit 18 of the game application 15 of the terminal device 1A makes a device token registration request to the push notification management server 6 (step S115).
  • This device token registration request is accompanied by an application ID and a user ID.
  • the device token registration unit 63 of the push notification management server 6 accepts the device token registration request, the device token registration unit 63 registers in the device token management database 61 (step S116). The game application 15 is notified (step S117).
  • the device token registration process is similarly performed from the game application 15 of the terminal device 1B.
  • FIG. 6 shows a processing example for a push notification request from the game server 3.
  • a push notification indicating that an additional download is necessary is given to the user of the terminal device 1A who has installed the game application 15 from the game server 3. Whether or not additional download is necessary can be determined by whether or not the user is “not yet” in the “latest download incomplete” in the user management database 31.
  • the push notification request unit 35 of the game server 3 makes a push notification request to the push notification management server 6 (step S201).
  • This push notification request is accompanied by the user ID of the transmission destination, but can be omitted if the user ID is already stored in the device token management database 61 of the push notification management server 6. Since a silent push notification is assumed, the message body is not required.
  • this push notification request can be accompanied by a reservation of the delivery date and time if it is not immediate transmission.
  • FIG. 7A shows the details of the information included in the push notification request, including “app_id” “launch” “reservation” “send_os” “sending_at” “debug” “pace” “api_version” and the like.
  • App_id is information for identifying an application program.
  • “Launch” is information indicating a launch option.
  • “Reservation” is information indicating whether immediate distribution or reserved distribution.
  • Send_os is information indicating a destination OS.
  • Send_at is information indicating the delivery date and time in the case of reserved delivery.
  • Debug is information indicating whether or not the distribution is to a debug terminal (not shown).
  • Pace is information indicating a delivery pace per minute.
  • Api_version is information indicating the version of API (Application Program Interface).
  • the message management unit 64 of the push notification management server 6 registers the reservation content in the message reservation management information 62 when the delivery date / time is reserved (step S202).
  • the message management unit 64 of the push notification management server 6 determines the timing of whether or not the reserved delivery date has been reached (step S203).
  • the message management unit 64 of the push notification management server 6 immediately determines that the push notification request is not accompanied by a reservation.
  • a corresponding device token of the transmission destination is acquired using the user ID of the transmission destination as a key (step S204).
  • the push notification request unit 65 of the push notification management server 6 makes a push notification request to the push notification execution server 5 (step S205).
  • This push notification request is accompanied by a destination device token (single or list).
  • FIG. 7B shows details of the information included in the push notification request, and includes “device_token”, “content_available”, “mid”, “app_id”, “launch”, and the like. About each, it is the same as that of what was mentioned above, However, These should just contain the content which each information shows, and may not be the same as FIG. 7 (a).
  • “Device_token” is a device token that identifies the terminal device that is the destination of the push notification.
  • Content_available is information indicating that additional download is possible (necessary).
  • “Mid” is information specifying a push notification (message).
  • App_id is information for identifying an application program.
  • “Launch” is information indicating a launch option.
  • FIG. 7C shows details of information included in the push notification, and includes “content_available”, “mid”, “app_id”, and “launch”. About each, it is the same as that of what was mentioned above, However, These should just contain the content which each information shows, and it does not need to be the same as FIG. 7 (a) and FIG.7 (b).
  • the push notification receiving unit 12 receives the push notification, and the application specifying unit 13 specifies the target application program based on the application program specifying information included in the received push notification. (Step S207).
  • the push notification receiving unit 12 specifies the game application 15 that is specified by the application program specifying information and is in the sleep state.
  • the information delivery unit 14 delivers information indicating that additional download is required for the identified game application 15 (step S208).
  • the download / update unit 19 of the game application 15 that has received the information makes a download request to the game server 3 (step S209), and the download data providing unit 36 of the game server 3 is held in the download data holding unit 32.
  • the latest program and data are returned (step S210).
  • the download / update unit 19 of the game application 15 updates itself based on the download of the program and data downloaded from the game server 3 (step S211).
  • the push notification receiving unit 12 specifies the game application 15 that is specified by the application program specifying information and is in the sleep state
  • the game application 15 that is in the active state is further specified, and the information delivery unit Information indicating that an additional download is necessary may be delivered from 14.
  • the operation in this case can be left to the implementation of the game application 15. For example, it is possible to present to the user that additional download can be performed at the break of the game progress, and execute additional download after obtaining confirmation.
  • the push notification receiving unit 12 identifies a game application 15 that is neither in the sleep state nor in the active state, and the information delivery unit 14 activates the game application 15 (and further transitions to the sleep state). Information indicating that an additional download is required can be handed over.
  • FIG. 8 shows a processing example for a push notification request from the management terminal device 4.
  • the user list generation unit 41 of the management terminal device 4 requests user information satisfying a predetermined condition from the game server 3 (step S221), and the information management unit 34 of the game server 3 searches the user management database 31. Then, the user information of the search result is returned to the management terminal device 4 (step S222). For example, the user ID “unsuccessfully downloaded” is acquired.
  • the user list generation unit 41 of the management terminal device 4 generates a user list listing the user IDs that are subject to push notification based on the acquired user information (step S223).
  • the push notification request unit 42 of the management terminal device 4 makes a push notification request to the push notification management server 6 (step S224).
  • This push notification request is accompanied by a destination user list.
  • this push notification request can be accompanied by a reservation of the delivery date and time if it is not immediate transmission.
  • the message management unit 64 of the push notification management server 6 registers the reservation content in the message reservation management information 62 when the delivery date / time is reserved (step S225).
  • the message management unit 64 of the push notification management server 6 determines the timing of whether or not the reserved delivery date has been reached (step S226).
  • the message management unit 64 of the push notification management server 6 immediately determines that the push notification request is not accompanied by a reservation.
  • a corresponding destination device token is acquired using the destination user ID as a key (step S227).
  • the push notification request unit 65 of the push notification management server 6 makes a push notification request to the push notification execution server 5 (step S228).
  • This push notification request is accompanied by a list of destination device tokens.
  • the push notification execution server 5 Upon receiving the push notification request, the push notification execution server 5 sends a push notification to the game application 15 such as the terminal device 1A indicated by the destination device token (step S229).
  • the push notification receiving unit 12 receives the push notification, and the application specifying unit 13 specifies the target application program based on the application program specifying information included in the received push notification (step S230).
  • the push notification receiving unit 12 specifies the game application 15 that is specified by the application program specifying information and is in the sleep state.
  • the information delivery unit 14 delivers information indicating that additional download is required for the identified game application 15 (step S231).
  • the download / update unit 19 of the game application 15 that has received the information makes a download request to the game server 3 (step S232), and the download data providing unit 36 of the game server 3 is held in the download data holding unit 32.
  • the latest program and data are returned (step S233).
  • the download / update unit 19 of the game application 15 updates itself based on the download of the program and data downloaded from the game server 3 (step S234).
  • the push notification receiving unit 12 specifies the game application 15 that is specified by the application program specifying information and is in the sleep state
  • the game application 15 that is in the active state is further specified, and the information delivery unit Information indicating that an additional download is necessary may be delivered from 14.
  • the operation in this case can be left to the implementation of the game application 15. For example, it is possible to present to the user that additional download can be performed at the break of the game progress, and execute additional download after obtaining confirmation.
  • the push notification receiving unit 12 identifies a game application 15 that is neither in the sleep state nor in the active state, and the information delivery unit 14 activates the game application 15 (and further transitions to the sleep state). Information indicating that an additional download is required can be handed over.
  • a normal push notification with a message body may be performed to recommend additional download by user operation.
  • operation command information may be embedded in a push notification transmitted by the server, and a terminal device that has received the push notification may operate according to the operation command information.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

ユーザに待ち時間を感じさせずにダウンロードおよびアップデートを実行する仕組を提供する。 端末装置を宛先とするプッシュ通知であって、端末装置にインストールされているアプリケーションプログラムについて追加ダウンロードが必要であることを示すプッシュ通知の送信をクラウドサービスに要求するプッシュ通知要求手段と、プッシュ通知を受信するプッシュ通知受信手段と、プッシュ通知に含まれるアプリケーションプログラム特定情報に基づいて対象となるアプリケーションプログラムを特定するアプリケーションプログラム特定手段と、特定されたアプリケーションプログラムに追加ダウンロードが必要であることを示す情報を引き渡す情報引渡手段と、追加ダウンロード管理装置にアクセスし、追加ダウンロードの対象となるプログラムまたはデータを取得するダウンロード手段とを備える。

Description

追加ダウンロード管理システム、端末装置制御プログラム、端末装置および追加ダウンロード管理装置
 本発明は、端末装置のプログラムやデータを自動的にダウンロードしてアップデートする技術に関する。
 スマートフォン、携帯電話、PC(Personal Computer)等の端末装置で利用するアプリケーションプログラム(アプリ)やアプリケーションプログラムが使用するデータを最新の状態にアップデートする方法として、いくつかの手法が用いられている。
 アプリケーションプログラム(プログラムとデータを含む)の初回のダウンロードおよびインストールは、複数のベンダー(開発者)から供給されるアプリケーションプログラムを一括に扱うストアサイトから行うのが普通であるが、アップデートについても同じストアサイトを用いる方法がある。この場合、ストアサイトから最新のアプリケーションプログラムをダウンロードし、従前のアプリケーションプログラムに上書きすることでアップデートを行う。この手法は、端末装置のOS(Operating System)等の提供するアップデート機能を用いて行われる。
 これとは異なる手法として、アップデートの対象となるアプリケーションプログラムの動作により、そのアプリケーションプログラムの開発者等の管理するサイト(ゲームアプリであればゲーム管理サーバ等)にアクセスし、変更のあるプログラムやデータについて追加的にダウンロードを行い、アップデートを行う手法がある。ニュースアプリ等では、通常の使用において最新のデータを取得する必要があることから、この手法が用いられる。
 後者の手法では、アプリケーションプログラムに頻繁に変更が加えられる場合に、開発側の管理下の閉じた範囲内で対応が行えるため、その都度にストアサイトへの登録手続や審査手続等が不要であり、迅速に対応ができる点で有利である。例えば、ゲーム処理の一部または全てをサーバで行うネットワークゲームでは、プレイヤの反応や不具合等への対応のため、ゲームシステムの一部やゲーム中のイベント等を変更することがしばしばあり、サーバ内のプログラムやデータを書き換えるのに合わせ、端末装置側のプログラムやデータもアップデートする必要が生じる場合がある。
 また、後者の方法では、変更する必要のあるプログラムやデータについてのみダウンロードすればよいため、アプリケーションプログラムの全体をダウンロードする場合よりも効率的である。
特開平6-259243号公報 WO2012/132027
 上述した、アップデートの対象となるアプリケーションプログラムの動作により所定のサイトから追加的なプログラムやデータのダウンロードおよびアップデートを行う場合、従来における動作は次のようになる。
 先ず、アプリケーションプログラムは、起動またはアクティブにされたタイミングで、所定のサイトにアップデートが必要かどうかを問い合わせる。その結果、アップデートが必要である場合、アプリケーションプログラムはユーザにアップデートが必要である旨を表示し、ユーザがアップデートの実行を指示すると、所定のサイトにアクセスし、ダウンロードおよびアップデートを実行する。
 ここで、ユーザがアプリケーションプログラムを起動またはアクティブにするタイミングというのは、そのアプリケーションプログラムを使用しようとするタイミングであるため、アップデートの実行を開始することにより、プログラムやデータの容量と通信回線速度により決まる時間だけ待たなければならない。そのため、すぐにでもゲーム等を始めたいという意欲を減殺し、アプリケーションプログラムの利用を止めてしまうという事態も考えられる。
 一方、特許文献1、2には、端末装置のプログラムを自動的にアップデートする技術が開示されているが、アップデートの対象となるアプリケーションプログラムの動作により追加的なダウンロードおよびアップデートを行う状況を想定しておらず、参考とすることができない。
 本発明は上記の従来の問題点に鑑み提案されたものであり、その目的とするところは、アップデートの対象となるアプリケーションプログラムの動作によりアップデートを行う状況において、ユーザに待ち時間を感じさせずにプログラムやデータの追加的なダウンロードおよびアップデートを実行する仕組を提供することにある。
 上記の課題を解決するため、本発明にあっては、端末装置を宛先とするプッシュ通知であって、前記端末装置にインストールされているアプリケーションプログラムについて追加ダウンロードが必要であることを示すプッシュ通知の送信をクラウドサービスに要求するプッシュ通知要求手段と、前記プッシュ通知を受信する、前記端末装置に設けられたプッシュ通知受信手段と、前記プッシュ通知に含まれるアプリケーションプログラム特定情報に基づいて対象となるアプリケーションプログラムを特定する、前記端末装置に設けられたアプリケーションプログラム特定手段と、特定されたアプリケーションプログラムに追加ダウンロードが必要であることを示す情報を引き渡す、前記端末装置に設けられた情報引渡手段と、特定されたアプリケーションプログラムにより構成され、追加ダウンロード管理装置にアクセスし、追加ダウンロードの対象となるプログラムまたはデータを取得するダウンロード手段とを備える。
 本発明にあっては、アップデートの対象となるアプリケーションプログラムの動作によりアップデートを行う状況において、ユーザに待ち時間を感じさせずにプログラムやデータの追加的なダウンロードおよびアップデートを実行する仕組を提供することができる。
本発明の一実施形態にかかるシステムの構成例を示す図である。 処理に用いられる情報の構造例を示す図である。 端末装置のハードウェア構成例を示す図である。 ゲームサーバ等のハードウェア構成例を示す図である。 実施形態の処理例を示すシーケンス図(その1)である。 実施形態の処理例を示すシーケンス図(その2)である。 プッシュ通知要求等に含まれる情報の例を示す図である。 実施形態の処理例を示すシーケンス図(その3)である。
 以下、本発明の好適な実施形態につき説明する。
 <構成>
 図1は本発明の一実施形態にかかるシステムの構成例を示す図である。なお、ネットワークゲームを行うためのゲームアプリを例にして説明するが、その他のアプリ、例えばニュースアプリ等にも適用できることは言うまでもない。
 図1において、システムは、ユーザ(プレイヤ)が操作するスマートフォン、携帯電話、PC等の端末装置1(1A、1B、・・)と、ゲームの管理を行うゲームサーバ3と、ゲームサーバ3の運用者によりプッシュ通知の送信指示等が行われる管理用端末装置4と、クラウドサービスとして提供されるプッシュ通知の実行を行うプッシュ通知実行サーバ5と、プッシュ通知実行サーバ5へのプッシュ通知の要求の仲介を行うプッシュ通知管理サーバ6とが、インターネット等のネットワーク2を介して接続されて構成されている。
 プッシュ通知は、システム側からユーザの端末装置に対して能動的にメッセージの通知を行うものであり、ユーザは特に操作を行うことなくリアルタイムに情報を取得することができる。スマートフォン等のOSにはプッシュ通知の機能が組み込まれているものが多く、クラウド上のサービス(APNs:Apple Push Notification Service、GCM:Google Cloud Messaging for Android等)と連携してプッシュ通知が行えるようになっている。このようなプッシュ通知のサービスを行うのがプッシュ通知実行サーバ5である。ユーザが所定のアプリに関してプッシュ通知の受け取りを許可している場合、サーバはユーザの端末装置を識別するデバイストークンを指定してAPNs等のクラウドサービスにプッシュ通知を要求することで、ユーザの端末装置にプッシュ通知が行われる。
 端末装置1には、OS11とゲームアプリ15とが設けられている。ゲームアプリ15は、予めストアサイト(図示せず)等からダウンロードされ、端末装置1内にインストールされたものである。
 OS11には、機能部として、プッシュ通知受信部12とアプリ特定部13と情報引渡部14とが設けられている。
 プッシュ通知受信部12は、プッシュ通知実行サーバ5から送信されるプッシュ通知をネットワーク2を介して受信する機能を有している。本実施形態において、アプリケーションプログラムについて追加ダウンロードが必要であることを示すプッシュ通知としては、受信時に画面表示または効果音発生を伴わないサイレント形式のプッシュ通知を想定しているが、通常の画面表示や効果音発生を伴うプッシュ通知であってもよい。
 アプリ特定部13は、プッシュ通知受信部12により受信したプッシュ通知に含まれるアプリケーションプログラム特定情報に基づいて対象となるアプリケーションプログラムを特定する機能を有している。ここで、OS11の機能上の制限から、プッシュ通知に連動してアプリケーションプログラムの起動を行うことができない場合には、動作中のプロセスとして起動している、スリープ状態またはアクティブ状態のアプリケーションプログラムに特定を限るものとする。更に、アクティブ状態のアプリケーションプログラムをプッシュ通知に対応させない場合には、スリープ状態のアプリケーションプログラムに特定を限るものとする。
 情報引渡部14は、アプリ特定部13により特定されたアプリケーションプログラムに追加ダウンロードが必要であることを示す情報を引き渡す機能を有している。アプリケーションプログラムに情報を引き渡す場合、そのアプリケーションプログラムは動作中のプロセスとして起動している必要があるため、スリープ状態またはアクティブ状態のいずれでもない場合は、OS11の機能により許容されることを前提に、先に該当するアプリケーションプログラムを起動してスリープ状態にしてから、追加ダウンロードが必要であることを示す情報を引き渡すものとする。
 ゲームアプリ15には、機能部として、ユーザ登録要求部16とデバイストークン取得要求部17とデバイストークン登録要求部18とダウンロード/アップデート部19とが設けられている。
 ユーザ登録要求部16は、ゲームアプリ15の初回の起動時等に、ゲームサーバ3に対してユーザ登録を行う機能を有している。
 デバイストークン取得要求部17は、ゲームアプリ15の起動時毎にプッシュ通知実行サーバ5に対してデバイストークンの取得要求を行う機能を有している。デバイストークンは、プッシュ通知実行サーバ5に対してプッシュ通知の送信要求を行う際に、宛先となる端末装置1を識別する情報である。デバイストークンは所定の頻度で更新されるため、ゲームアプリ15の起動時毎に取得する必要がある。
 デバイストークン登録要求部18は、プッシュ通知実行サーバ5から取得したデバイストークンをプッシュ通知管理サーバ6に対して登録要求を行う機能を有している。
 ダウンロード/アップデート部19は、情報引渡部14から追加ダウンロードが必要であることを示す情報の引渡を受けた場合に、所定のゲームサーバ3にアクセスしてプログラムやデータのダウンロードを行い、それに基づいて自己のアップデートを行う機能を有している。
 ゲームサーバ3には、ユーザ管理データベース31とダウンロードデータ保持部32とユーザ登録部33と情報管理部34とプッシュ通知要求部35とダウンロードデータ提供部36とが設けられている。
 ユーザ管理データベース31は、図2に示すように、「ユーザID」「パスワード」「ユーザ属性」「使用言語」「OSバージョン」「最新ダウンロード未済」等の項目(フィールド)を有している。「ユーザID」は、ユーザを識別する情報である。「パスワード」は、ユーザ認証に用いられる秘密の情報である。「ユーザ属性」は、当該ユーザの性別、年齢層、居住地域等の情報である。「使用言語」は、当該ユーザのゲームアプリ15上の使用言語を識別する情報である。「OSバージョン」は、当該ユーザのゲームアプリ15を実行するOSの版数を示す情報である。「最新ダウンロード未済」は、当該ユーザにより最新ダウンロードが既に行われているか行われていないかを示す情報である。
 図1に戻り、ゲームサーバ3のダウンロードデータ保持部32は、ダウンロードに必要となるプログラムやデータを保持して管理する部分である。
 ユーザ登録部33は、端末装置1のゲームアプリ15からのユーザ登録の要求を受け付け、ユーザ登録の処理を行う機能を有している。
 情報管理部34は、管理用端末装置4等からの要求に応じて、ゲームサーバ3内で管理する情報を提供する機能を有している。
 プッシュ通知要求部35は、プッシュ通知管理サーバ6に対してプッシュ通知の送信要求を行う機能を有している。ゲームサーバ3からのプッシュ通知の送信要求は、個々の端末装置を指定して行うものでもよいし、ユーザリストに基づく一括送信の要求でもよい。この要求には、即時に送信を行う場合と、送信日時(配信日時)を指定して予約する場合とがある。
 ダウンロードデータ提供部36は、端末装置1のダウンロード/アップデート部19からの要求に応じ、ダウンロードデータ保持部32に保持されているダウンロードデータを端末装置1に提供する機能を有している。
 管理用端末装置4には、ユーザリスト生成部41とプッシュ通知要求部42とが設けられている。
 ユーザリスト生成部41は、必要に応じてゲームサーバ3から情報を取得し、プッシュ通知の送信先となるユーザIDのリストを生成する機能を有している。
 プッシュ通知要求部42は、プッシュ通知管理サーバ6に対してプッシュ通知の送信要求を行う機能を有している。管理用端末装置4からのプッシュ通知の送信要求は、ユーザリストに基づく一括送信の要求となる。この要求には、即時に送信を行う場合と、送信日時(配信日時)を指定して予約する場合とがある。
 プッシュ通知管理サーバ6には、デバイストークン管理データベース61とメッセージ予約管理情報62とデバイストークン登録部63とメッセージ管理部64とプッシュ通知要求部65とが設けられている。
 デバイストークン管理データベース61は、図2に示すように、「アプリID」「ユーザID」「デバイストークン」等の項目を有している。「アプリID」は、アプリを識別する情報である。「ユーザID」は、ユーザを識別する情報であり、ゲームサーバ3に記憶されているユーザIDのうち、プッシュ通知が許可されているユーザID、もしくは、プッシュ通知を許可している端末装置から送られてきたユーザIDを記憶している。「デバイストークン」は、当該ユーザに対してプッシュ通知実行サーバ5から発行されたデバイストークンである。
 メッセージ予約管理情報62は、図2に示すように、「メッセージID」「メッセージ内容」「配信予約日時」「配信未済」等の項目を有している。「メッセージID」は、プッシュ通知されるメッセージを識別する情報である。「メッセージ内容」は、メッセージの内容またはパラメータの内容の情報である。「配信予約日時」は、プッシュ通知を行う予定の日時の情報である。「配信未済」は、該当するプッシュ通知が既に行われたか否かを示す情報である。
 図1に戻り、プッシュ通知管理サーバ6のデバイストークン登録部63は、端末装置1からのデバイストークンの登録要求に応じてデバイストークン管理データベース61への登録を行う機能を有している。
 メッセージ管理部64は、ゲームサーバ3または管理用端末装置4からプッシュ通知の要求を受け付け、予約についてはメッセージ予約管理情報62に登録して配信のタイミングを管理する機能を有している。
 プッシュ通知要求部65は、ゲームサーバ3または管理用端末装置4から要求されたプッシュ通知をプッシュ通知実行サーバ5に対して要求する機能を有している。
 図3は端末装置1のハードウェア構成例を示す図である。
 図3において、端末装置1は、電源システム101と、プロセッサ103、メモリコントローラ104、周辺インタフェース105を含むメインシステム102と、記憶部106とを備えている。また、端末装置1は、外部ポート107と、高周波回路108と、アンテナ109と、オーディオ回路110と、スピーカ111と、マイク112と、近接センサ113と、GPS(Global Positioning System)回路114とを備えている。また、端末装置1は、ディスプレイコントローラ116、光学センサコントローラ117、入力コントローラ118を含むI/O(Input/Output)サブシステム115と、タッチ反応型ディスプレイシステム119と、光学センサ120と、入力部121とを備えている。
 図4はゲームサーバ3等のハードウェア構成例を示す図である。
 図4において、ゲームサーバ3、管理用端末装置4、プッシュ通知実行サーバ5、プッシュ通知管理サーバ6は、システムバス301に接続されたCPU(Central Processing Unit)302、ROM(Read Only Memory)303、RAM(Random Access Memory)304、NVRAM(Non-Volatile Random Access Memory)305を備えている。また、ゲームサーバ3等は、I/F(Interface)306と、I/F306に接続された、I/O(Input/Output Device)307、HDD(Hard Disk Drive)308、NIC(Network Interface Card)309と、I/O307に接続されたモニタ310、キーボード311、マウス312等を備えている。I/O307にはCD/DVD(Compact Disk/Digital Versatile Disk)ドライブ等を接続することもできる。
 <動作>
 図5は上記の実施形態の処理例を示すシーケンス図であり、プッシュ通知に先立って行われる、端末装置1のゲームアプリ15によるユーザ登録とデバイストークンの取得・登録の処理例を示したものである。
 図5において、端末装置1Aでゲームアプリ15を起動し(ステップS101)、その後にゲームアプリ15のユーザ登録要求部16からゲームサーバ3に対してユーザ登録要求を行うものとする(ステップS102)。なお、ユーザ登録はゲームアプリ15について原則として1回行えばよいものである。
 ゲームサーバ3のユーザ登録部33は、ユーザ登録要求を受け付けると、所定の手順に従って、ユーザID、パスワード等を発行してユーザ管理データベース31に登録し(ステップS103)、端末装置1Aのゲームアプリ15に通知する(ステップS104)。
 端末装置1Bのゲームアプリ15からも、同様にしてユーザ登録処理が行われる。
 その後、任意のタイミングで端末装置1のゲームアプリ15を起動すると(ステップS111)、その都度に、ゲームアプリ15のデバイストークン取得要求部17からプッシュ通知実行サーバ5に対してデバイストークン取得要求を行う(ステップS112)。
 プッシュ通知実行サーバ5は、デバイストークン取得要求を受け付けると、デバイストークンを発行して内部的に登録し(ステップS113)、端末装置1Aのゲームアプリ15に通知する(ステップS114)。
 次いで、端末装置1Aのゲームアプリ15のデバイストークン登録要求部18は、プッシュ通知管理サーバ6に対してデバイストークン登録要求を行う(ステップS115)。このデバイストークン登録要求には、アプリIDとユーザIDを伴う。
 プッシュ通知管理サーバ6のデバイストークン登録部63は、デバイストークン登録要求を受け付けると、デバイストークン管理データベース61に登録を行ない(ステップS116)、正常に登録が行われると、その旨を端末装置1Aのゲームアプリ15に通知する(ステップS117)。
 端末装置1Bのゲームアプリ15からも、同様にしてデバイストークン登録処理が行われる。
 次に、図6は、ゲームサーバ3からのプッシュ通知要求についての処理例を示している。
 ゲームサーバ3からゲームアプリ15をインストールしている端末装置1Aのユーザに追加ダウンロードが必要であることを示すプッシュ通知を行うものとする。なお、追加ダウンロードが必要であるか否かは、ユーザ管理データベース31の「最新ダウンロード未済」で「未」となっているユーザであるか否かで判断することができる。
 ゲームサーバ3のプッシュ通知要求部35は、プッシュ通知管理サーバ6に対してプッシュ通知要求を行う(ステップS201)。このプッシュ通知要求には、送信先のユーザIDを伴うが、既にプッシュ通知管理サーバ6のデバイストークン管理データベース61にユーザIDを記憶している場合は省略が可能である。サイレント形式のプッシュ通知を想定しているため、メッセージ本文は不要である。また、このプッシュ通知要求には、即座の送信でない場合、配信日時の予約を伴うことができる。
 図7(a)はプッシュ通知要求に含まれる情報の詳細を示したものであり、「app_id」「launch」「reservation」「send_os」「sending_at」「debug」「pace」「api_version」等を含んでいる。「app_id」は、アプリケーションプログラムを特定する情報である。「launch」は、起動オプションを示す情報である。「reservation」は、即時配信か予約配信かを示す情報である。「send_os」は、配信先のOSを示す情報である。「sending_at」は、予約配信である場合の配信日時を示す情報である。「debug」は、デバッグ端末(図示せず)への配信であるか否かを示す情報である。「pace」は、1分間あたりの配信ペースを示す情報である。「api_version」は、API(Application Program Interface)のバージョンを示す情報である。
 図6に戻り、プッシュ通知管理サーバ6のメッセージ管理部64は、プッシュ通知要求を受け付けると、配信日時の予約を伴う場合、メッセージ予約管理情報62に予約内容を登録する(ステップS202)。
 その後、プッシュ通知管理サーバ6のメッセージ管理部64は、メッセージ予約管理情報62に予約情報がある場合には、予約された配信日時に達したか否かのタイミング判断を行う(ステップS203)。
 プッシュ通知管理サーバ6のメッセージ管理部64は、予約を伴わないプッシュ通知要求である場合は即座に、予約を伴うプッシュ通知要求である場合には配信日時に達した場合、デバイストークン管理データベース61から送信先のユーザIDをキーにして対応する送信先のデバイストークンを取得する(ステップS204)。
 次いで、プッシュ通知管理サーバ6のプッシュ通知要求部65は、プッシュ通知実行サーバ5に対してプッシュ通知要求を行う(ステップS205)。このプッシュ通知要求には、送信先のデバイストークン(単独またはリスト)を伴う。図7(b)はプッシュ通知要求に含まれる情報の詳細を示したものであり、「device_token」「content_available」「mid」「app_id」「launch」等を含んでいる。それぞれについては、前述したものと同様であるが、これらは、それぞれの情報が示す内容を含んでいればよく、図7(a)と同一のものでなくてもよい。「device_token」は、プッシュ通知の宛先となる端末装置を特定するデバイストークンである。「content_available」は、追加ダウンロードが可能(必要)であることを示す情報である。「mid」は、プッシュ通知(メッセージ)を特定する情報である。「app_id」は、アプリケーションプログラムを特定する情報である。「launch」は、起動オプションを示す情報である。
 図6に戻り、プッシュ通知実行サーバ5は、プッシュ通知要求を受け付けると、送信先のデバイストークンの示す端末装置1Aのゲームアプリ15にプッシュ通知を一斉に行なう(ステップS206)。図7(c)はプッシュ通知に含まれる情報の詳細を示したものであり、「content_available」「mid」「app_id」「launch」を含んでいる。それぞれについては、前述したものと同様であるが、これらは、それぞれの情報が示す内容を含んでいればよく、図7(a)や図7(b)と同一のものでなくてもよい。
 図6に戻り、端末装置1Aでは、プッシュ通知受信部12がプッシュ通知を受信し、アプリ特定部13は、受信したプッシュ通知に含まれるアプリケーションプログラム特定情報に基づいて対象となるアプリケーションプログラムを特定する(ステップS207)。ここでは、プッシュ通知受信部12は、アプリケーションプログラム特定情報により特定され、かつスリープ状態にあるゲームアプリ15を特定するものとする。
 スリープ状態にあるものに限定する場合の利点としては、
・現在流通しているスマートフォン用のOSではスリープ状態またはアクティブ状態にあるアプリケーションプログラムにしかプッシュ通知の内容を伝えられないが、その環境と整合する点
・ユーザに待ち時間を感じさせない観点から、スリープ状態で裏で動作しているアプリケーションプログラムからダウンロードを行わせるのが好ましい点
・スリープ状態にあるということはそのアプリケーションプログラムが最近使用されたということであり、使用する意図のないアプリケーションプログラムに追加ダウンロードを求めることがなく、記憶容量も圧迫させない点
等がある。
 次いで、情報引渡部14は、特定されたゲームアプリ15に追加ダウンロードが必要であることを示す情報を引き渡す(ステップS208)。
 情報の引渡を受けたゲームアプリ15のダウンロード/アップデート部19は、ゲームサーバ3に対してダウンロード要求を行い(ステップS209)、ゲームサーバ3のダウンロードデータ提供部36はダウンロードデータ保持部32に保持されている最新のプログラムやデータを返送する(ステップS210)。
 そして、ゲームアプリ15のダウンロード/アップデート部19は、ゲームサーバ3からダウンロードしたプログラムやデータのダウンロードに基づいて自己のアップデートを行う(ステップS211)。
 なお、プッシュ通知受信部12が、アプリケーションプログラム特定情報により特定され、かつスリープ状態にあるゲームアプリ15を特定する場合について説明したが、更に、アクティブ状態にあるゲームアプリ15を特定し、情報引渡部14から追加ダウンロードが必要であることを示す情報を引き渡してもよい。この場合の動作はゲームアプリ15の実装に委ねることができる。例えば、ゲーム進行の区切りにおいて追加ダウンロードが行える旨をユーザに提示し、確認を得た上で追加ダウンロードを実行することができる。また、OS11の機能から許容される場合、スリープ状態でもアクティブ状態でもないゲームアプリ15をプッシュ通知受信部12が特定し、情報引渡部14はゲームアプリ15を起動(更にはスリープ状態に遷移させてもよい)した上で追加ダウンロードが必要であることを示す情報を引き渡すこともできる。
 次に、図8は、管理用端末装置4からのプッシュ通知要求についての処理例を示している。
 管理用端末装置4のユーザリスト生成部41は、ゲームサーバ3に対して所定の条件を満たすユーザ情報を要求し(ステップS221)、ゲームサーバ3の情報管理部34はユーザ管理データベース31を検索し、検索結果のユーザ情報を管理用端末装置4に返送する(ステップS222)。例えば、「最新ダウンロード未済」が「未」のユーザIDを取得する。
 管理用端末装置4のユーザリスト生成部41は、取得したユーザ情報に基づいてプッシュ通知の対象となるユーザIDを列挙したユーザリストを生成する(ステップS223)。
 次いで、管理用端末装置4のプッシュ通知要求部42は、プッシュ通知管理サーバ6に対してプッシュ通知要求を行う(ステップS224)。このプッシュ通知要求には、送信先のユーザリストを伴う。また、このプッシュ通知要求には、即座の送信でない場合、配信日時の予約を伴うことができる。
 プッシュ通知管理サーバ6のメッセージ管理部64は、プッシュ通知要求を受け付けると、配信日時の予約を伴う場合、メッセージ予約管理情報62に予約内容を登録する(ステップS225)。
 その後、プッシュ通知管理サーバ6のメッセージ管理部64は、メッセージ予約管理情報62に予約情報がある場合には、予約された配信日時に達したか否かのタイミング判断を行う(ステップS226)。
 プッシュ通知管理サーバ6のメッセージ管理部64は、予約を伴わないプッシュ通知要求である場合は即座に、予約を伴うプッシュ通知要求である場合には配信日時に達した場合、デバイストークン管理データベース61から送信先のユーザIDをキーにして対応する送信先のデバイストークンを取得する(ステップS227)。
 次いで、プッシュ通知管理サーバ6のプッシュ通知要求部65は、プッシュ通知実行サーバ5に対してプッシュ通知要求を行う(ステップS228)。このプッシュ通知要求には、送信先のデバイストークンのリストを伴う。
 プッシュ通知実行サーバ5は、プッシュ通知要求を受け付けると、送信先のデバイストークンの示す端末装置1A等のゲームアプリ15にプッシュ通知を行なう(ステップS229)。
 端末装置1Aでは、プッシュ通知受信部12がプッシュ通知を受信し、アプリ特定部13は、受信したプッシュ通知に含まれるアプリケーションプログラム特定情報に基づいて対象となるアプリケーションプログラムを特定する(ステップS230)。ここでは、プッシュ通知受信部12は、アプリケーションプログラム特定情報により特定され、かつスリープ状態にあるゲームアプリ15を特定するものとする。
 次いで、情報引渡部14は、特定されたゲームアプリ15に追加ダウンロードが必要であることを示す情報を引き渡す(ステップS231)。
 情報の引渡を受けたゲームアプリ15のダウンロード/アップデート部19は、ゲームサーバ3に対してダウンロード要求を行い(ステップS232)、ゲームサーバ3のダウンロードデータ提供部36はダウンロードデータ保持部32に保持されている最新のプログラムやデータを返送する(ステップS233)。
 そして、ゲームアプリ15のダウンロード/アップデート部19は、ゲームサーバ3からダウンロードしたプログラムやデータのダウンロードに基づいて自己のアップデートを行う(ステップS234)。
 なお、プッシュ通知受信部12が、アプリケーションプログラム特定情報により特定され、かつスリープ状態にあるゲームアプリ15を特定する場合について説明したが、更に、アクティブ状態にあるゲームアプリ15を特定し、情報引渡部14から追加ダウンロードが必要であることを示す情報を引き渡してもよい。この場合の動作はゲームアプリ15の実装に委ねることができる。例えば、ゲーム進行の区切りにおいて追加ダウンロードが行える旨をユーザに提示し、確認を得た上で追加ダウンロードを実行することができる。また、OS11の機能から許容される場合、スリープ状態でもアクティブ状態でもないゲームアプリ15をプッシュ通知受信部12が特定し、情報引渡部14はゲームアプリ15を起動(更にはスリープ状態に遷移させてもよい)した上で追加ダウンロードが必要であることを示す情報を引き渡すこともできる。
 更に、ゲームサーバ3または管理用端末装置4からプッシュ通知管理サーバ6およびプッシュ通知実行サーバ5を介して端末装置1にサイレント形式のプッシュ通知を行う場合について説明したが、そのプッシュ通知を行った後におけるユーザ管理データベース31の「最新ダウンロード未済」を参照し、追加ダウンロードが行われていないユーザについては、所定間隔で繰り返しサイレント形式のプッシュ通知を行うようにすることができる。これにより、ゲームアプリ15により追加ダウンロードが行われる可能性を高めることができる。
 また、サイレント形式のプッシュ通知によっても追加ダウンロードが行われないユーザについては、メッセージ本文を伴う通常のプッシュ通知を行い、ユーザの操作による追加ダウンロードを勧めるようにしてもよい。
 また、プログラムやデータのダウンロードおよびアップデートに限らず、サーバが送信するプッシュ通知に動作指令情報を埋め込んでおき、プッシュ通知を受信した端末装置がその動作指令情報に従って動作するようにしてもよい。
 また、ゲームアプリ以外にニュースアプリ等に適用できる点は前述したとおりである。
 <総括>
 以上説明したように、本実施形態によれば、アップデートの対象となるアプリケーションプログラムの動作によりアップデートを行う状況において、ユーザに待ち時間を感じさせずにプログラムやデータの追加的なダウンロードおよびアップデートを実行する仕組を提供することができる。その結果、ダウンロードの待ち時間に起因するユーザの離脱を低減させることができる。
 また、従来はアプリケーションプログラムが追加ダウンロードが必要(可能)かどうかを所定のタイミングでサーバに自ら問い合わせるため、一定量のデータ通信量が無駄に発生していた。しかし、本実施形態によれば、サーバ側で追加ダウンロードが必要(可能)となった場合に端末装置に通知を行い、それに応じて追加ダウンロードを行えばよいため、データ通信量の削減にも貢献することができる。
 また、ニュースアプリに適用した場合、予め最新のニュースデータをダウンロードしているため、電波の届かないところでもニュースの閲覧が可能となる利点がある。
 以上、本発明の好適な実施の形態により本発明を説明した。ここでは特定の具体例を示して本発明を説明したが、特許請求の範囲に定義された本発明の広範な趣旨および範囲から逸脱することなく、これら具体例に様々な修正および変更を加えることができることは明らかである。すなわち、具体例の詳細および添付の図面により本発明が限定されるものと解釈してはならない。
 1、1A、1B   端末装置
 11        OS
 12        プッシュ通知受信部
 13        アプリ特定部
 14        情報引渡部
 15        ゲームアプリ
 16        ユーザ登録要求部
 17        デバイストークン取得要求部
 18        デバイストークン登録要求部
 19        ダウンロード/アップデート部
 2         ネットワーク
 3         ゲームサーバ
 31        ユーザ管理データベース
 32        ダウンロードデータ保持部
 33        ユーザ登録部
 34        情報管理部
 35        プッシュ通知要求部
 36        ダウンロードデータ提供部
 4         管理用端末装置
 41        ユーザリスト生成部
 42        プッシュ通知要求部
 5         プッシュ通知実行サーバ
 6         プッシュ通知管理サーバ
 61        デバイストークン管理データベース
 62        メッセージ予約管理情報
 63        デバイストークン登録部
 64        メッセージ管理部
 65        プッシュ通知要求部

Claims (7)

  1.  端末装置を宛先とするプッシュ通知であって、前記端末装置にインストールされているアプリケーションプログラムについて追加ダウンロードが必要であることを示すプッシュ通知の送信をクラウドサービスに要求するプッシュ通知要求手段と、
     前記プッシュ通知を受信する、前記端末装置に設けられたプッシュ通知受信手段と、
     前記プッシュ通知に含まれるアプリケーションプログラム特定情報に基づいて対象となるアプリケーションプログラムを特定する、前記端末装置に設けられたアプリケーションプログラム特定手段と、
     特定されたアプリケーションプログラムに追加ダウンロードが必要であることを示す情報を引き渡す、前記端末装置に設けられた情報引渡手段と、
     特定されたアプリケーションプログラムにより構成され、追加ダウンロード管理装置にアクセスし、追加ダウンロードの対象となるプログラムまたはデータを取得するダウンロード手段と
    を備えたことを特徴とする追加ダウンロード管理システム。
  2.  請求項1に記載の追加ダウンロード管理システムにおいて、
     前記プッシュ通知要求手段は、プッシュ通知の受信時に画面表示または効果音発生を伴わないサイレント形式のプッシュ通知の送信を要求する
    ことを特徴とする追加ダウンロード管理システム。
  3.  請求項1または2のいずれか一項に記載の追加ダウンロード管理システムにおいて、
     前記アプリケーションプログラム特定手段は、前記アプリケーションプログラム特定情報により特定されるアプリケーションプログラムのうち、スリープ状態のアプリケーションプログラムを特定する
    ことを特徴とする追加ダウンロード管理システム。
  4.  請求項1乃至3のいずれか一項に記載の追加ダウンロード管理システムにおいて、
     前記アプリケーションプログラムはゲームアプリケーションプログラムであり、
     前記プログラムはゲームアプリケーションプログラムのアップデート用のプログラムであり、
     前記データはゲームアプリケーションプログラムにより使用されるデータである
    ことを特徴とする追加ダウンロード管理システム。
  5.  端末装置を構成するコンピュータを、
     前記端末装置を宛先とするプッシュ通知であって、前記端末装置にインストールされているアプリケーションプログラムについて追加ダウンロードが必要であることを示すプッシュ通知をクラウドサービスから受信するプッシュ通知受信手段、
     前記プッシュ通知に含まれるアプリケーションプログラム特定情報に基づいて対象となるアプリケーションプログラムを特定するアプリケーションプログラム特定手段、
     特定されたアプリケーションプログラムに追加ダウンロードが必要であることを示す情報を引き渡す情報引渡手段、
     特定されたアプリケーションプログラムにより構成され、追加ダウンロード管理装置にアクセスし、追加ダウンロードの対象となるプログラムまたはデータを取得するダウンロード手段
    として機能させることを特徴とする端末装置制御プログラム。
  6.  端末装置を宛先とするプッシュ通知であって、前記端末装置にインストールされているアプリケーションプログラムについて追加ダウンロードが必要であることを示すプッシュ通知をクラウドサービスから受信するプッシュ通知受信手段と、
     前記プッシュ通知に含まれるアプリケーションプログラム特定情報に基づいて対象となるアプリケーションプログラムを特定するアプリケーションプログラム特定手段と、
     特定されたアプリケーションプログラムに追加ダウンロードが必要であることを示す情報を引き渡す情報引渡手段と、
     特定されたアプリケーションプログラムにより構成され、追加ダウンロード管理装置にアクセスし、追加ダウンロードの対象となるプログラムまたはデータを取得するダウンロード手段と
    を備えたことを特徴とする端末装置。
  7.  端末装置を宛先とするプッシュ通知であって、前記端末装置にインストールされているアプリケーションプログラムについて追加ダウンロードが必要であることを示すプッシュ通知の送信をクラウドサービスに要求するプッシュ通知要求手段と、
     前記プッシュ通知に含まれるアプリケーションプログラム特定情報に基づいて対象となるアプリケーションプログラムとして特定され、追加ダウンロードが必要であることを示す情報が引き渡されたアプリケーションプログラムからのアクセスに対して追加ダウンロードの対象となるプログラムまたはデータを提供するダウンロードデータ提供手段と
    を備えたことを特徴とする追加ダウンロード管理装置。
PCT/JP2014/084055 2014-03-28 2014-12-24 追加ダウンロード管理システム、端末装置制御プログラム、端末装置および追加ダウンロード管理装置 WO2015145905A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014-069498 2014-03-28
JP2014069498 2014-03-28

Publications (1)

Publication Number Publication Date
WO2015145905A1 true WO2015145905A1 (ja) 2015-10-01

Family

ID=54194471

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/084055 WO2015145905A1 (ja) 2014-03-28 2014-12-24 追加ダウンロード管理システム、端末装置制御プログラム、端末装置および追加ダウンロード管理装置

Country Status (1)

Country Link
WO (1) WO2015145905A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105391801A (zh) * 2015-12-14 2016-03-09 新华瑞德(北京)网络科技有限公司 用于应用程序的信息推送方法和装置
US20170235968A1 (en) * 2016-02-15 2017-08-17 Hidenobu Kishi Information processing system and information processing method
JP2018064946A (ja) * 2017-11-10 2018-04-26 株式会社 ディー・エヌ・エー 所定のサービスを提供するためのプログラム、システム、及び方法
JP6467012B1 (ja) * 2017-09-28 2019-02-06 グリー株式会社 プログラム、制御方法、および情報処理装置
CN112631674A (zh) * 2020-12-18 2021-04-09 北京信息科技大学 一种应用程序运行、存储方法及系统
JP7435994B2 (ja) 2019-05-15 2024-02-21 Necプラットフォームズ株式会社 光伝送装置、光伝送システム、光伝送装置の制御方法及びプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130047034A1 (en) * 2011-08-17 2013-02-21 Lookout, Inc., A California Corporation System and method for mobile device push communications
JP2014503152A (ja) * 2011-01-05 2014-02-06 アップル インコーポレイテッド マルチユーザ装置のためのメッセージプッシュ通知クライアントの改良

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014503152A (ja) * 2011-01-05 2014-02-06 アップル インコーポレイテッド マルチユーザ装置のためのメッセージプッシュ通知クライアントの改良
US20130047034A1 (en) * 2011-08-17 2013-02-21 Lookout, Inc., A California Corporation System and method for mobile device push communications

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HIROSHI UCHIDA: "Tanmatsu Software Jido Koshin Kino no Kaihatsu", NTT DOCOMO TECHNICAL JOURNAL, vol. 16, no. 1, 1 April 2008 (2008-04-01), pages 67 - 68 *
SHAWN WELCH: "iOS Core Frameworks Technical Guide", 11 September 2012 (2012-09-11), pages 275 - 283 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105391801A (zh) * 2015-12-14 2016-03-09 新华瑞德(北京)网络科技有限公司 用于应用程序的信息推送方法和装置
US20170235968A1 (en) * 2016-02-15 2017-08-17 Hidenobu Kishi Information processing system and information processing method
US11163899B2 (en) * 2016-02-15 2021-11-02 Ricoh Company, Ltd. Information processing system and information processing method
JP6467012B1 (ja) * 2017-09-28 2019-02-06 グリー株式会社 プログラム、制御方法、および情報処理装置
JP2019063001A (ja) * 2017-09-28 2019-04-25 グリー株式会社 プログラム、制御方法、および情報処理装置
JP2018064946A (ja) * 2017-11-10 2018-04-26 株式会社 ディー・エヌ・エー 所定のサービスを提供するためのプログラム、システム、及び方法
JP7435994B2 (ja) 2019-05-15 2024-02-21 Necプラットフォームズ株式会社 光伝送装置、光伝送システム、光伝送装置の制御方法及びプログラム
CN112631674A (zh) * 2020-12-18 2021-04-09 北京信息科技大学 一种应用程序运行、存储方法及系统

Similar Documents

Publication Publication Date Title
WO2015145905A1 (ja) 追加ダウンロード管理システム、端末装置制御プログラム、端末装置および追加ダウンロード管理装置
US9182975B2 (en) Automatic application updates
US20170012950A1 (en) Method and apparatus for supporting secure chat
TWI559229B (zh) 用於背景工作管理的方法、行動計算裝置及可讀取媒體
US20090219901A1 (en) Wireless Content Aquisition for Mobile Electronic Devices
CN105210031B (zh) 用于操作系统的自助服务机应用模式
US20110302574A1 (en) Update management server, electronic apparatus, update management system, and method therefor
WO2014055450A1 (en) Mobile device application streaming
KR20160069445A (ko) 웹 어플리케이션 관리를 위한 사용자 장치 및 그 방법
WO2013003440A1 (en) Transferring state information between electronic devices
JP2014519632A (ja) アプリケーションのカスタマイズされた起動
US9037757B2 (en) Device action service
JP2014048832A (ja) サーバ装置およびサーバプログラム
EP3657326B1 (en) Broadcast event processing method and device
WO2015076028A1 (ja) プッシュ通知管理装置、プッシュ通知管理方法およびプッシュ通知管理プログラム
US11671379B1 (en) System and method for subscription management using dynamically composed management entities
JP2009259124A (ja) アプリケーション更新情報提供システム、及びアプリケーション更新情報提供方法
US11907153B2 (en) System and method for distributed subscription management
WO2017000929A1 (zh) 基于客户端的媒体信息投放方法及装置
US20210049048A1 (en) Inter device transfer of resources for executing application updates cycles
JP2013257837A (ja) 広告配信システム、サーバーおよび方法
KR102124330B1 (ko) 어플리케이션 업데이트 방법 및 이를 지원하는 단말
KR102590347B1 (ko) 서버, 전자 장치 및 데이터 관리 방법
US10891017B1 (en) Rotating icon selection and interaction software development kit (SDK)
JP5736599B2 (ja) プッシュ通知管理装置、プッシュ通知管理方法およびプッシュ通知管理プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14887231

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase
122 Ep: pct application non-entry in european phase

Ref document number: 14887231

Country of ref document: EP

Kind code of ref document: A1