(57)【特許請求の範囲】
【請求項１】
複数のアクティビティコンポーネントのそれぞれによって、同時にオンラインになるアカウントの情報を受信するステップと、
前記複数のアクティビティコンポーネントのそれぞれによって、紐付けインスタンスを介して、異なるプロセスでアカウントの前記情報を対応するサービスコンポーネントに転送するステップと、
前記サービスコンポーネントのそれぞれによって、前記アカウントの前記情報に従ってログインを実行するステップと
を備えるマルチアカウントのログイン方法。
【請求項２】
前記複数のアクティビティコンポーネントのそれぞれによって、紐付けインスタンスを介して、異なるプロセスでアカウントの前記情報を前記対応するサービスコンポーネントに転送する前に、
同時にオンラインになる前記アカウントの数に従って、前記サービスコンポーネント及び前記サービスコンポーネントの複数のサブクラスを構成するステップであって、前記サブクラスは、前記サービスコンポーネントから継承されるｎｕｌｌクラスである、ステップをさらに備えることを特徴とする請求項１に記載のマルチアカウントのログイン方法。
【請求項３】
前記複数のアクティビティコンポーネントのそれぞれによって、紐付けインスタンスを介して、異なるプロセスでアカウントの前記情報を前記対応するサービスコンポーネントに転送する前に、
前記アクティビティコンポーネントが配置されるプロセスを前記サービスコンポーネントがそれぞれ配置されるサービスプロセスに紐付けるステップと、
前記サービスコンポーネントによって、前記対応する紐付けインスタンスを前記アクティビティコンポーネントにフィードバックするステップと
をさらに備えることを特徴とする請求項１に記載のマルチアカウントのログイン方法。
【請求項４】
前記複数のアクティビティコンポーネントのそれぞれによって、紐付けインスタンスを介して、異なるプロセスでアカウントの前記情報を前記対応するサービスコンポーネントに転送する前に、
Ａｎｄｒｏｉｄシステムの構成ファイルにおいて、異なるサービスプロセスで前記サービスコンポーネントを構成することを実施するステップをさらに備えることを特徴とする請求項１に記載のマルチアカウントのログイン方法。
【請求項５】
請求項１ないし４のいずれか一項に記載の前記マルチアカウントのログイン方法のステップと、
前記複数のアクティビティコンポーネントによって、前記紐付けインスタンスを介して、通信動作を実行するために前記サービスコンポーネントを呼び出すステップと
を備えるマルチアカウントの通信方法。
【請求項６】
前記通信動作は、
それぞれのアクティビティコンポーネントによって、それぞれの紐付けインスタンスを介して、メッセージをサーバに送信するためにそれぞれのサービスコンポーネントを呼び出すことと、
前記それぞれのサービスコンポーネントによって、前記紐付けインスタンスを介して、受信されたメッセージを前記それぞれのアクティビティコンポーネントにフィードバックすることと、
前記それぞれのアクティビティコンポーネントによって、前記それぞれの紐付けインスタンスを介して、前記サーバからログアウトするために前記それぞれのサービスコンポーネントを呼び出すことと
のうちの１つまたは複数を含むことを特徴とする請求項５に記載のマルチアカウントの通信方法。
【請求項７】
前記それぞれのアクティビティコンポーネントによって、前記それぞれの紐付けインスタンスを介して、前記メッセージを前記サーバに送信するために前記それぞれのサービスコンポーネントを呼び出した後、
前記それぞれのサービスコンポーネントによって、前記それぞれの紐付けインスタンスを介して、前記通信動作の結果を前記それぞれのアクティビティコンポーネントにフィードバックすることをさらに含むことを特徴とする請求項６に記載のマルチアカウントの通信方法。
【請求項８】
前記それぞれのアクティビティコンポーネントによって、前記それぞれの紐付けインスタンスを介して、前記メッセージを前記サーバに送信するために前記それぞれのサービスコンポーネントを前記呼び出すことは、
前記それぞれのアクティビティコンポーネントによって、前記それぞれの紐付けインスタンスを介して、前記サーバからログアウトするために前記それぞれのサービスコンポーネントを呼び出すことと、
前記それぞれのアクティビティコンポーネントによって、前記それぞれのサービスコンポーネントとのそれぞれの紐付けを解除することと
を含むことを特徴とする請求項６に記載のマルチアカウントの通信方法。
【請求項９】
複数のアクティビティコンポーネントのそれぞれによって、同時にオンラインになるアカウントの情報を受信することを実施するように構成された受信モジュールと、
前記複数のアクティビティコンポーネントのそれぞれによって、紐付けインスタンスを介して、異なるプロセスでアカウントの前記情報を対応するサービスコンポーネントに転送することを実施するように構成された呼び出しモジュールと、
前記サービスコンポーネントのそれぞれによって、アカウントの前記情報に従ってログインを実行することを実施するように構成されたログインモジュールと
を備えたマルチアカウントのログイン装置。
【請求項１０】
同時にオンラインになる前記アカウントの数に従って、前記サービスコンポーネント及び前記サービスコンポーネントの複数のサブクラスを構成するように構成された第１の構成モジュールであって、前記サブクラスは、前記サービスコンポーネントから継承されるｎｕｌｌクラスである、第１の構成モジュールをさらに備えたことを特徴とする請求項９に記載のマルチアカウントのログイン装置。
【請求項１１】
Ａｎｄｒｏｉｄシステムの構成ファイルにおいて、異なるサービスプロセスで前記サービスコンポーネントを構成することを実施するように構成された第２の構成モジュールをさらに備えたことを特徴とする請求項９に記載のマルチアカウントのログイン装置。
【請求項１２】
第３の構成モジュールをさらに備え、前記第３の構成モジュールは、
前記複数のアクティビティコンポーネントが配置されるプロセスを前記サービスコンポーネントがそれぞれ配置されるサービスプロセスに紐付けるように構成された紐付けモジュールと、
前記サービスコンポーネントによって、前記対応する紐付けインスタンスを前記アクティビティコンポーネントにフィードバックすることを実施するように構成された紐付けフィードバックモジュールと
を含むことを特徴とする請求項９に記載のマルチアカウントのログイン装置。
【請求項１３】
請求項９ないし１２のいずれか一項に記載の前記マルチアカウントのログイン装置と、
それぞれのアクティビティコンポーネントによって、それぞれの紐付けインスタンスを介して、それぞれの通信動作を実行するためにそれぞれのサービスコンポーネントを呼び出すように構成された通信動作モジュールと
を備えたマルチアカウントの通信装置。
【請求項１４】
前記通信動作モジュールは、
前記それぞれのアクティビティコンポーネントによって、前記それぞれの紐付けインスタンスを介して、メッセージをサーバに送信するために前記それぞれのサービスコンポーネントを呼び出すように構成された送信サブモジュールと、
前記それぞれのサービスコンポーネントによって、前記紐付けインスタンスを介して、前記サーバから受信されたメッセージを前記それぞれのアクティビティコンポーネントにフィードバックするように構成された受信サブモジュールと、
前記それぞれのアクティビティコンポーネントによって、前記それぞれの紐付けインスタンスを介して、前記サーバからログアウトするために前記それぞれのサービスコンポーネントを呼び出すように構成されたログアウトサブモジュールと、
のうちの１つまたは複数を含むことを特徴とする請求項１３に記載のマルチアカウントの通信装置。
【請求項１５】
前記それぞれのサービスコンポーネントによって、前記それぞれの紐付けインスタンスを介して、前記それぞれの通信動作の結果を前記それぞれのアクティビティコンポーネントにフィードバックするように構成された結果フィードバックモジュールをさらに備えたことを特徴とする請求項１３に記載のマルチアカウントの通信装置。
【請求項１６】
前記通信動作モジュールは、
前記それぞれのアクティビティコンポーネントによって、前記それぞれの紐付けインスタンスを介して、前記サーバからログアウトするために前記それぞれのサービスコンポーネントを呼び出すように構成されたログアウトサブモジュールと、
前記それぞれのアクティビティコンポーネントによって、前記それぞれのサービスコンポーネントとの紐付けを解除するように構成された紐付け解除サブモジュールと
を含むことを特徴とする請求項１４に記載のマルチアカウントの通信装置。
【請求項１７】
請求項９ないし１２のいずれか一項に記載のマルチアカウントのログイン装置を備えたモバイル端末。
【請求項１８】
請求項１３ないし１６のいずれか一項に記載のマルチアカウントの通信装置を備えたモバイル端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信の分野に関し、特に、マルチアカウントのログイン及び通信方法、装置、ならびにモバイル端末に関する。
【背景技術】
【０００２】
ＩＭ（インスタントメッセージング）製品の開発により、ユーザの要求が高まっている。例えば、ユーザは、メッセージを送信及び受信するために複数のアカウントが同時にオンラインになることをＩＭ製品がサポートできることを期待する。しかしながら、既存のＩＭ製品の大部分は、単一のアカウントのログインをサポートするにすぎず、現在のアカウントは、他のアカウントのログインの前にログアウトされる必要がある。どのように単一のアカウントのサポートのバージョンをマルチアカウントのサポートのバージョンに迅速にアップグレードするかは、多くのＩＭ開発エンジニアが解決する必要がある課題になっている。
【０００３】
複数のアカウントの同時オンラインを実施して、異なる使用シナリオにおける通信の必要性を満たすために、開発者は以下の３つの実施態様の方法を有する。
【０００４】
１．既存のＩＭの解決策またはソケット通信のフレームワークを放棄し、開発者独自のＩＭロジックを書き込む。
【０００５】
２．現在のＩＭの解決策のプロバイダまたはソケット通信のフレームワークのプロバイダをマルチアカウントのサポートを提供するように奨励する。
【０００６】
３．ＩＭの解決策が単独で提供される場合、マルチアカウントのサポートを強化するように通信層を再構築する。
【０００７】
第１の方式については、ＩＭの下層のソケット層での通信ロジックの書き込みが複雑となり、現在のＩＭ製品の大部分の開発が既存のＩＭの解決策（ＨｕａｎｘｉｎもしくはＰｒｏ  Ｐｌｕｓ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｃｌｏｕｄなど）または既製品のソケット層通信のフレームワーク（ｍｉｎａなど）を採用するので、ＩＭロジックを書き直すことが困難である。ＩＭ製品にはそれら自体のＩＭの下層の機能を使用するものが存在するが、そのような方式は、過度に高コストである。第２の方式については、同時にマルチアカウントのサポートを提供するように現在のＩＭの解決策のプロバイダまたはソケット通信のフレームワークのプロバイダ要請するのに非常に多くの時間を必要とし、よって、この方式は、促進のタイミングを損ない、大多数のユーザを失う可能性が非常に高いので、マルチアカウントのサポートの緊急の必要性が存在するケースに適さない。第３の方式については、ＩＭ製品のコア通信層は概して、比較的固定され、実現の後にはほとんど変更されることがなく、概して、通信層の変更が複雑な作業であり、それは、高い作業コストを要し、それと同時に、通信層の再構築が、再構築の後の機能的不備などの未知のリスクにも直面し、プロジェクトの迅速な開発の必要性を満たすのが困難である。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明の目的は、同一のインスタントメッセージングクライアント端末において複数のアカウントのログインまたは通信を簡便に達成する、マルチアカウントのログイン及び通信方法、装置ならびにモバイル端末を提供することである。
【課題を解決するための手段】
【０００９】
上記技術的課題を解決するために、本発明の実施態様は、
複数のアクティビティコンポーネントのそれぞれによって、同時にオンラインになる必要があるアカウントの情報を受信することと、
複数のアクティビティコンポーネントのそれぞれによって、紐付けインスタンスを介して、異なるプロセスでアカウントの情報を対応するサービスコンポーネントに転送することと、
サービスコンポーネントのそれぞれによって、アカウントの情報に従ってログインを実行することと、
を含むマルチアカウントのログイン方法を開示する。
【００１０】
本発明の実施態様はさらに、
上記マルチアカウントのログイン方法のステップと、
アクティビティコンポーネントによって、紐付けインスタンスを介して、通信動作を実行するためにサービスコンポーネントを呼び出すことと、
を含むマルチアカウントの通信方法を開示する。
【００１１】
本発明の実施態様はさらに、
複数のアクティビティコンポーネントのそれぞれによって、同時にオンラインになる必要があるアカウントの情報を受信することを実施するように構成された受信モジュールと、
アクティビティコンポーネントのそれぞれによって、紐付けインスタンスを介して、異なるプロセスでアカウントの情報を対応するサービスコンポーネントに転送することを実施するように構成された呼び出しモジュールと、
サービスコンポーネントのそれぞれによって、アカウントの情報に従ってログインを実行することを実施するように構成されたログインモジュールと、
を含むマルチアカウントのログイン装置を開示する。
【００１２】
本発明の実施態様はさらに、
上記マルチアカウントのログイン装置と、
アクティビティコンポーネントによって、紐付けインスタンスを介して、通信動作を実行するためにサービスコンポーネントを呼び出すことを実施するように構成された通信動作モジュールと、
を含むマルチアカウントの通信装置を開示する。
【００１３】
加えて、本発明の実施形態はさらに、上記装置を含むモバイル端末を提供する。
【００１４】
従来の技術と比較して、本発明は、以下の主要な差異及び効果を有し、すなわち、本発明の実施形態では、アクティビティコンポーネントのそれぞれが、紐付けインスタンスを介して、ログインを実行するために異なるプロセスで対応するサービスコンポーネントを呼び出す。このようにして、各アカウントが紐付けメカニズムを通じて対応するサービスプロセスに紐付けられ、複数のアカウントの同時ログイン及び通信がプロセスの間の非依存性を使用することによって実施される。
【００１５】
本発明の実施態様は、既存のＩＭの解決策またはソケット通信フレームに基づいて、既存の単一アカウントのインスタントメッセージングクライアント端末を、複数のアカウントの同時オンラインログイン及び通信の機能を有するようにアップグレードすることができる。実施態様は単純であり、開発サイクルが短く、リスクが小さく、それによって、複数のアカウントが同時にオンラインになる要件を満たす。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施態様に従った、マルチアカウントのログイン方法の概略フローチャートである。
【図２】本発明の実施態様に従った、マルチアカウントのログイン方法におけるインスタントメッセージングクライアント端末を構成するフローチャートである。
【図３】本発明の実施態様に従った、マルチアカウントの通信方法の概略フローチャートである。
【図４】本発明の実施態様に従った、マルチアカウントの通信方法におけるサーバのログアウトのフローチャートである。
【図５】本発明の実施態様に従った、マルチアカウントのログイン装置の概略構造図である。
【図６】本発明の実施態様に従った、別のマルチアカウントのログイン装置の概略構造図である。
【図７】本発明の実施態様に従った、マルチアカウントのログイン装置の概略構造図である。
【図８】本発明の実施態様に従った、マルチアカウントのログイン装置の概略構造図である。
【発明を実施するための形態】
【００１７】
以下の説明では、読み手が本出願をより良く理解することを支援するために、多くの技術的な詳細が提供される。しかしながら、当業者は、本出願の各請求項によって特許請求される技術的解決策が、以下の技術的な詳細、ならびに様々な変形及び修正の全てがなくても実施されることが可能であることを理解することができる。
【００１８】
本発明の目的、技術的解決策及び利点をより明確にするために、本発明の実施態様はさらに、添付図面を参照して以下で詳細に説明される。
【００１９】
本発明の実施態様では、「アクティビティコンポーネント（ａｃｔｉｖｉｔｙ  ｃｏｍｐｏｎｅｎｔ）」は、Ａｎｄｒｏｉｄのコンポーネントにおける共通コンポーネントのうちの１つである、Ａｃｔｉｖｉｔｙコンポーネントを指す。アクティビティ（Ａｃｔｉｖｉｔｙ）コンポーネントは、タスクを遂行し、または機能を実施するインタラクションのためのユーザによって使用される、スクリーン上のインタラクティブ領域を提供するアプリケーションコンポーネントである。「サービス（Ｓｅｒｖｉｃｅ）コンポーネント」は、Ａｎｄｒｏｉｄのコンポーネントにおける共通コンポーネントのうちの１つでもあり、バックグラウンドでいくつかの時間を要するロジックを処理し、または長時間の稼働を要するタスクを実行するために使用されるＳｅｒｖｉｃｅコンポーネントを指す。必要である場合、プログラムが存在する場合でさえ、Ｓｅｒｖｉｃｅコンポーネントはなお、バックグラウンドで稼働状態を維持し続けることができる。「紐付け（Ｂｉｎｄｉｎｇ）」は、バインダ（Ｂｉｎｄｅｒ）を指す。Ａｎｄｒｏｉｄシステムでは、各アプリケーションは、いくつかのＡｃｔｉｖｉｔｙコンポーネント及びＳｅｒｖｉｃｅコンポーネントを含み、それらのＡｃｔｉｖｉｔｙコンポーネント及びＳｅｒｖｉｃｅコンポーネントは、同一のプログレスで稼働していることがあり、異なるプロセスでも稼働していることがある。異なるプロセスで稼働しているコンポーネントについては、Ａｎｄｒｏｉｄシステムは、プロセス間通信を実行するためにＢｉｎｄｅｒメカニズムを採用することができる。例えば、Ｂｉｎｄｅｒは、マスタプロセスにおけるＡｃｔｉｖｉｔｙコンポーネントとＳｅｒｖｉｃｅプロセスで稼働しているサービスプロセスとの間で通信を実施することができる。
【００２０】
図１を参照して、図１は、本発明の実施態様に従った、マルチアカウントのログイン方法の概略フローチャートである。図１に示される実施態様は、ステップＳ１０１〜Ｓ１０３を含む。
【００２１】
ステップＳ１０１では、複数のアクティビティコンポーネントはそれぞれ、同時にオンラインになる必要があるアカウントの情報を受信する。
【００２２】
その後、プロセスがステップＳ１０２に進み、そこでは、アクティビティコンポーネントはそれぞれ、紐付けインスタンスを介して、異なるプロセスでアカウントの情報をサービスコンポーネントに転送する。
【００２３】
次いで、プロセスがステップＳ１０３に進み、そこでは、サービスコンポーネントはそれぞれ、アカウントの情報に従ってログインを実行し、それによって、複数のアカウントが同時にログインされ、オンラインになる目的を達成する。
【００２４】
特に、アクティビティコンポーネントは、アカウントの情報に対応するインタラクションインタフェースを提供するように構成され、ユーザは、ユーザ名及びパスワードなどの同時にオンラインになる必要があるアカウントの情報をインタラクションインタフェースに入力することができる。インスタントメッセージングクライアント端末は、相互に緩く紐付けられる複数のアクティビティコンポーネントを含むことができる。異なる動作を実行するために、各アクティビティコンポーネントは、別のアクティビティコンポーネントを起動することができる。新たなアクティビティコンポーネントが起動されるとき、前のアクティビティコンポーネントが停止されるが、Ａｎｄｒｏｉｄシステムは、アクティビティコンポーネントをスタック（バックスタック）のトップに保持し、その対応するインタラクションインタフェースはユーザのフォーカスを失う。バックスタックは、基本的な「後入れ先出し法」待ち行列メカニズムに準拠し、よって、ユーザが現在のアクティビティコンポーネントでの作業を完了し、インタラクションインタフェースを切り替えるとき、前のアクティビティがバックスタックからポップアップすることができ、前の状態を復元することができる。
【００２５】
いくつかの実施態様では、ユーザがアカウントの情報を受信するためのインタラクションインタフェースは、異なるページにそれぞれ設定されても良く（ページはアクティビティコンポーネントによっても提供されても良い）、また、同一のページ上で統合されても良い。アカウントの情報を受信するためのインタラクションインタフェースは、アクティビティコンポーネントに１対１に対応する。したがって、ユーザがアカウントの情報をインタラクションインタフェースに入力した後、アクティビティコンポーネントは、ユーザによって入力されたアカウントの情報を取得することができる。
【００２６】
例えば、３つのアカウントがログインされる必要がある場合、ログインのための３つのインタラクションインタフェースを提供するために３つのアクティビティコンポーネントが必要とされる。３つのインタラクションインタフェースはそれぞれ、異なるページ上で構成されても良く、また、１つのページ上で構成されても良い。アクティビティコンポーネントは、ユーザによって入力されたアカウントの情報を対応するインタラクションインタフェースから取得する。
【００２７】
別の態様では、各サービスコンポーネントは、ソケット接続を介してサーバとの長期接続（ｌｏｎｇ  ｃｏｎｎｅｃｔｉｏｎ）を維持することができる。各ソケット接続は、ローカルに一意なソケット番号を有し、それによって、インスタントメッセージングクライアント端末は、複数のソケット接続を使用することによってマルチアカウントのログインまたは通信を実施することができる。このようにして、複数のサービスコンポーネントは、対応する長期ソケット接続を介して、複数のアカウントの同時ログインを実施するためにサーバにログインすることができる。
【００２８】
アクティビティコンポーネントが対応するインタラクションインタフェースを介してアカウントの情報を受信する場合、アカウントの情報は、紐付けインスタンスを介して、対応するサービスコンポーネントに転送される。サービスコンポーネントは、確立された長期ソケット接続を介して、ログインのためにアカウントの情報をサーバに送信する。
【００２９】
マルチアカウントのログインを実施するために、使用の前にインスタントメッセージングクライアント端末を構成する必要がある。図２を参照して、図２は、本発明の実施態様に従った、マルチアカウントのログイン方法におけるインスタントメッセージングクライアント端末を構成するフローチャートである。構成するプロセスは、ステップＳ２０１〜Ｓ２０３を含む。
【００３０】
ステップＳ２０１では、同時にオンラインになる必要があるアカウントの数に従って、対応するアクティビティコンポーネント及び対応するサービスコンポーネントを構成する。例えば、同時にオンラインになる必要があるアカウントの数に従って、対応するアクティビティコンポーネントが構成され、各アクティビティコンポーネントがアカウントの情報を入力するための１つのインタラクションインタフェースを提供する。加えて、同時にオンラインになる必要があるアカウントの数に従って、サービスコンポーネント及びそれらのサブクラスの数が選択される。例えば、３つのアカウントが同時にオンラインになる必要がある場合、１つのサービスコンポーネントＳ0と、サービスコンポーネントＳ0の２つのサブクラス、すなわちサービスコンポーネントＳ1及びサービスコンポーネントＳ2とが実施される必要があり、サブクラスは、サービスコンポーネントＳ0のｎｕｌｌクラスを継承する。このようにして、３つのアカウントが同時にオンラインになる必要性を満たすために、３つのアクティビティコンポーネント、すなわちサービスコンポーネントＳ0、サービスコンポーネントＳ1、及びサービスコンポーネントＳ2が実施されることが可能である。ログインのプロセスでは、同時にオンラインになるアカウントの数は、構成されるサービスコンポーネントの数以下である。例えば、３つのサービスコンポーネントが構成される実施態様では、同時にログインされるアカウントの数は、１、２、または３であっても良い。使用の間、ユーザは、実際の必要性に従って、同時にオンラインになるアカウントの数を選択することができ、その数は、サービスコンポーネントの数と必ずしも同一ではない。
【００３１】
ステップＳ２０２では、複数のサービスコンポーネントを異なるサービスプロセスで構成する。
【００３２】
特定の実施態様のプロセス、例えば、ＡｎｄｒｏｉｄシステムにおけるＡｎｄｒｏｉｄＭａｎｉｆｅｓｔ構成ファイルでは、サービスコンポーネントＳ0は、サービスプロセスで構成されても良く、サービスコンポーネントＳ1は、サービス１プロセスで構成され、サービスコンポーネントＳ2は、サービス２プロセスで構成される。
【００３３】
ステップＳ２０３では、対応する紐付けインスタンス（Ｂｉｎｄｅｒ）を取得するために、アクティビティコンポーネントが配置されるプロセスを、対応するサービスコンポーネントが配置されるサービスプロセスに紐付ける。アクティビティコンポーネントがサービスコンポーネントに紐付けられるとき、サービスコンポーネントがサーバとのソケット接続を確立していない場合、サービスコンポーネントはまず、サーバとのソケット接続を確立する。アクティビティコンポーネントがアカウントの情報を受信する場合、アクティビティコンポーネントは、紐付けインスタンスを介して、アカウントの情報をサービスコンポーネントに転送し、サービスコンポーネントは、ソケット接続を介してサーバにログインする。
【００３４】
特に、アクティビティコンポーネントが配置されるプロセスは、対応するサービスコンポーネントが配置されるプロセスに紐付けられる。紐付けが完了すると、サービスコンポーネントは、対応する紐付けインスタンスをアクティビティコンポーネント（すなわち、Ｂｉｎｄｅｒ）にフィードバックする。このようにして、アクティビティコンポーネントは、紐付けインスタンスを介して、サーバにログインするためにサービスコンポーネントをそれぞれ呼び出すことができる。例えば、いくつかの実施態様では、３つのアカウントが同時にログインされる必要があるとき、アクティビティコンポーネントＡ0、アクティビティコンポーネントＡ1、及びアクティビティコンポーネントＡ2は、ユーザから入力されたアカウントの情報をそれぞれ受信するための３つのインタラクションインタフェースを提供する。アクティビティコンポーネントＡ0（すなわち、Ａｃｔｉｖｉｔｙコンポーネント）が配置されるプロセスは、サービスコンポーネントＳ0が配置されるＳｅｒｖｉｃｅプロセスに、Ｂｉｎｄｅｒメカニズムを介して紐付けられる。同時に、アクティビティコンポーネントＡ1が配置されるプロセスは、サービスコンポーネントＳ1が配置されるＳｅｒｖｉｃｅ１プロセスに紐付けられ、アクティビティコンポーネントＡ2が配置されるプロセスは、サービスコンポーネントＳ2が配置されるＳｅｒｖｉｃｅ２プロセスに紐付けられる。このようにして、アクティビティコンポーネントＡ0が配置されるプロセスは、サービスコンポーネントＳ0が配置されるＳｅｒｖｉｃｅプロセスを通じて、対応する紐付けインスタンスＢ0を取得し、アクティビティコンポーネントＡ1が配置されるプロセスは、サービスコンポーネントＳ1が配置されるＳｅｒｖｉｃｅ１プロセスを通じて、対応する紐付けインスタンスＢ1を取得し、アクティビティコンポーネントＡ2が配置されるプロセスは、サービスコンポーネントＳ2が配置されるＳｅｒｖｉｃｅ２プロセスを通じて、対応する紐付けインスタンスＢ2を取得する。Ｓｅｒｖｉｃｅプロセス、Ｓｅｒｖｉｃｅ１プロセス、及びＳｅｒｖｉｃｅ２プロセスはそれぞれ、異なるサービスプロセスである。
【００３５】
したがって、アクティビティコンポーネントＡ0、アクティビティコンポーネントＡ1、及びアクティビティコンポーネントＡ2は、紐付けインスタンスＢ0、紐付けインスタンスＢ1、及び紐付けインスタンスＢ2をそれぞれ介して、異なるアカウントを使用してログインを実行するために、対応するサービスコンポーネントＳ0、サービスコンポーネントＳ1、及びサービスコンポーネントＳ2を呼び出すことができる。例えば、ユーザが同時に３つのアカウント、第１のアカウント、第２のアカウント、及び第３のアカウントにログインすることを想定する場合、対応するインタラクションインタフェースを介して第１のアカウントを受信した後、アクティビティコンポーネントＡ0は、紐付けインスタンスＢ0を介して、第１のアカウントにログインするために対応するサービスコンポーネントＳ0を呼び出し、対応するインタラクションインタフェースを介して第２のアカウントを受信した後、アクティビティコンポーネントＡ1は、紐付けインスタンスＢ1を介して、第２のアカウントにログインするために対応するサービスコンポーネントＳ1を呼び出し、対応するインタラクションインタフェースを介して第３のアカウントを受信した後、アクティビティコンポーネントＡ2は、紐付けインスタンスＢ2を介して、第３のアカウントにログインするために対応するサービスコンポーネントＳ2を呼び出し、それによって、３つのアカウントの同時ログインを達成する。
【００３６】
サービスコンポーネントＳ0、サービスコンポーネントＳ1、及びサービスコンポーネントＳ2が異なるプロセスで稼働しており、１つのプロセスが１つのＳｏｃｋｅｔ接続を含むので、複数のアカウントがログインされ、同時にオンラインになる機能が実施されることが可能である。図１に示される実施態様では、対応する紐付けインスタンスＢ0を呼び出すとき、アクティビティコンポーネントＡ0は、紐付けインスタンスＢ0のログイン方法を呼び出し、紐付けインスタンスＢ0は、対応するアカウントをサーバにログインさせるために対応するサービスコンポーネントＳ0のログイン動作を呼び出す。ログインに成功した後、紐付けインスタンスＢ0はまた、アクティビティコンポーネントＡ0によって設定されるコールバック関数を通じてログイン結果をアクティビティコンポーネントＡ0に戻すことができる。同様に、アクティビティコンポーネントＡ1及びアクティビティコンポーネントＡ1はまた、対応する紐付けインスタンスＢ1または紐付けインスタンスＢ2のログイン方法を対応して呼び出すことによって、対応するアカウントにログインすることができ、それによって、マルチアカウントのログインを達成する。
【００３７】
加えて、本発明の実施形態はさらに、マルチアカウントの通信方法を開示する。図３を参照して、方法はさらに、図１に示された実施態様に従ったログイン方法を使用してログインを実行した後（ステップＳ３０１）のステップＳ３０２を含む。
【００３８】
ステップＳ３０２では、アクティビティコンポーネントは、対応する紐付けインスタンスを介して通信動作を実行する。サービスコンポーネントがソケット接続を確立した後、アクティビティコンポーネントは、新たなメッセージを登録し、紐付けインスタンスを介して監視を受信する。このようにして、サービスコンポーネントがメッセージをサーバから受信する場合、アクティビティコンポーネントは、紐付けインスタンスを介してメッセージに関して通知されることが可能である。同様に、サービスコンポーネントがアクティビティコンポーネントによって開始されるメッセージを送信する要求を受信する場合、サービスコンポーネントは、ソケット接続を通じてメッセージをサーバに送信する。
【００３９】
いくつかの実施態様では、上記「通信動作（ｃｏｍｍｕｎｉｃａｔｉｏｎ  ｏｐｅｒａｔｉｏｎ）」は、アクティビティコンポーネントによって、紐付けインスタンスを介して、メッセージをサーバに送信するためにサービスコンポーネントを呼び出すことと、サービスコンポーネントによって、紐付けインスタンスを介して、受信されたメッセージをアクティビティコンポーネントにフィードバックすることと、アクティビティコンポーネントによって、紐付けインスタンスを介して、サーバからログアウトするためにサービスコンポーネントを呼び出すことと、を含むが、それらに限定されない。例えば、アクティビティコンポーネントが紐付けインスタンスを介して、メッセージをサーバに送信するためにサービスコンポーネントを呼び出す実施態様では、アクティビティコンポーネントは、紐付けインスタンスのｓｅｎｄＭｅｓｓａｇｅ方法を呼び出し、メッセージ送信動作をトリガするためにサービスコンポーネントを呼び出し、メッセージをサーバに転送する。メッセージの送信が成功した後、サービスコンポーネントは、紐付けインスタンスを介して、アクティビティコンポーネントによって設定されるコールバックを使用することによって、メッセージ送信結果をアクティビティコンポーネントに転送する。別の例については、サービスコンポーネントが紐付けインスタンスを介して、受信されたメッセージをアクティビティコンポーネントにフィードバックする実施態様では、サービスコンポーネントは、その他によって送信されたメッセージを受信することができ、紐付けインスタンス及びアクティビティコンポーネントによって設定されたコールバックを介して、メッセージの内容をアクティビティコンポーネントに通すことができる。
【００４０】
いくつかの他の実施態様では、図４を参照して、図４は、本発明の実施態様に従った、マルチアカウントの通信方法におけるサーバのログアウトのフローチャートである。図４に示される実施態様は、ステップＳ４０１〜Ｓ４０３を含む。ステップＳ４０１で図１に示された実施態様を使用してログインした後、プロセスはステップＳ４０２及びＳ４０３に進む。
【００４１】
ステップＳ４０２では、アクティビティコンポーネントは、紐付けインスタンスを介して、サーバからログアウトするためにサービスコンポーネントを呼び出すことができる。次いで、ステップＳ４０３では、サービスコンポーネントからアクティビティコンポーネントの紐付けを解除する。例えば、インスタントメッセージングのシナリオの終わりでは、アクティビティコンポーネントは、紐付けインスタンスのログアウト方法を呼び出すことができ、紐付けインスタンスは、サーバからログアウトするためにサービスコンポーネントのログアウト動作を呼び出すことができる。ログアウトに成功した後、紐付けインスタンスは、アクティビティコンポーネントによって設定されたコールバックを通じてログアウト結果をアクティビティコンポーネントに戻すことができる。最後に、アクティビティコンポーネントは、サービスコンポーネントから紐付けを解除される。
【００４２】
いくつかの他の既存の実施態様では、インスタントメッセージングクライアント端末は、サービスコンポーネントにおけるログイン、メッセージの受信及び送信、ならびに長期ソケット接続などのカプセル化された基本的なロジックを有することができる。通常、サービスコンポーネントの紐付け特性は、それらの既存の解決策が全てクロスプロセス（ｃｒｏｓｓ−ｐｒｏｃｅｓｓ）であることと決定する。したがって、サービスコンポーネントが配置されるサービスは、複数のアカウントの同時ログインをサポートする機能を実施するためにアクティビティコンポーネントに紐付けられる。
【００４３】
本発明の全ての方法の実施態様は全て、ソフトウェア、ハードウェア、またはファームウェアなどによって実施されることが可能である。本発明がソフトウェア、ハードウェア、またはファームウェアによって実施されるかに関わらず、命令コードは、いずれかのタイプのコンピュータアクセス可能メモリ（例えば、永続的または修正可能、揮発性または不揮発性、ソリッドステートまたは非ソリッドステート、及び固定または交換可能媒体など）に記憶されることが可能である。同様に、メモリは、プログラマブルアレイロジック（ＰＡＬ）、ランダムアクセスメモリ（ＲＡＭ）、プログラマブルリードオンリメモリ（ＰＲＯＭ）、リードオンリメモリ（ＲＯＭ）、電子的消去可能プログラマブルＲＯＭ（ＥＥＰＲＯＭ）、磁気ディスク、光ディスク、及びデジタル多用途ディスク（ＤＶＤ）であっても良い。
【００４４】
本出願の実施態様はさらに、マルチアカウントのログイン装置に関する。図５は、本出願の実施態様に従った、マルチアカウントのログイン装置の概略構造図である。特に、マルチアカウントのログイン装置１０は、受信モジュール１１、呼び出しモジュール１２、及びログインモジュール１３を含む。
【００４５】
ここで、受信モジュール１１は、複数のアクティビティコンポーネントのそれぞれによって、同時にオンラインになる必要があるアカウントの情報を受信することを実施するように構成される。呼び出しモジュール１２は、アクティビティコンポーネントのそれぞれによって、紐付けインスタンスを介して、異なるプロセスでアカウントの情報を対応するサービスコンポーネントに転送することを実施するように構成される。ログインモジュール１３は、サービスコンポーネントのそれぞれによって、アカウントの情報に従ってログインを実行することを実施するように構成される。
【００４６】
図６を参照して、図６は、本発明の実施態様に従った、別のマルチアカウントのログイン装置の概略構造図である。特に、図５に示された実施態様における受信モジュール１１、呼び出しモジュール１２、及びログインモジュール１３に加え、マルチアカウントのログイン装置１０はさらに、第１の構成モジュール１５、第２の構成モジュール１６、及び第３の構成モジュール１７を含む。
【００４７】
ここで、第１の構成モジュール１５は、同時にオンラインになる必要があるアカウントの情報の数に従って、サービスコンポーネント及びサービスコンポーネントの複数のサブクラスを構成するように構成され、サブクラスは、サービスコンポーネントのｎｕｌｌクラスを継承する。第２の構成モジュール１６は、Ａｎｄｒｏｉｄシステムの構成ファイルにおいて、異なるサービスプロセスで複数のサービスコンポーネントを構成することを実施するように構成される。第３の構成モジュール１７は、紐付けモジュール１７１及び紐付けフィードバックモジュール１７２を含む。紐付けモジュール１７１は、アクティビティコンポーネントが配置されるプロセスを対応するサービスコンポーネントが配置されるサービスプロセスにそれぞれ紐付けるように構成される。紐付けフィードバックモジュール１７２は、サービスコンポーネントによって、対応する紐付けインスタンスをアクティビティコンポーネントにフィードバックすることを実施するように構成される。
【００４８】
上記実施態様は、ログイン方法の実施態様に対応する装置の実施態様であり、この実施態様は、ログイン方法の実施態様と連携して実施されても良い。ログイン方法の実施態様で言及された関連する技術的な詳細はなお、この実施態様で有効であり、よって繰り返しを削減するためにここでは説明されない。同様に、この実施態様で言及された関連する技術的な詳細はまた、ログイン方法の実施態様に適用されても良い。
【００４９】
本出願の実施態様はさらに、マルチアカウントの通信装置に関連する。図７は、実施態様に従った、マルチアカウントのログイン装置の概略構造図である。特に、マルチアカウントの通信装置は、図６に示された実施態様に含まれるマルチアカウントログイン装置１０及び通信動作モジュール２０を含む。通信動作モジュール２０は、アクティビティコンポーネントによって、対応する紐付けインスタンスを介して、通信動作を実行するためにサービスコンポーネントを呼び出すことを実施するように構成される。通信動作モジュール２０は、アクティビティコンポーネントによって、紐付けインスタンスを介して、メッセージをサーバに送信するためにサービスコンポーネントを呼び出すように構成された送信サブモジュール２１と、サービスコンポーネントによって、紐付けインスタンスを介して、受信されたメッセージをアクティビティコンポーネントにフィードバックするように構成された受信サブモジュール２２と、アクティビティコンポーネントによって、紐付けインスタンスを介して、サーバからログアウトするためにサービスコンポーネントを呼び出すように構成されたログアウトサブモジュール２３と、を含むが、それらに限定されない。いくつかの実施態様では、通信装置はさらに、サービスコンポーネントによって、紐付けインスタンスを介して、通信動作の結果をアクティビティコンポーネントにフィードバックすることを実施するように構成された結果フィードバックモジュールを含む。
【００５０】
いくつかの他の実施態様では、図８を参照して、通信動作モジュール２０は、ログアウトサブモジュール２４及び紐付け解除サブモジュール２５を含む。ここで、ログアウトサブモジュール２４は、アクティビティコンポーネントによって、紐付けインスタンスを介して、サーバからログアウトするためにサービスコンポーネントを呼び出すことを実施するように構成される。紐付け解除サブモジュール２５は、アクティビティコンポーネントによって、サービスコンポーネントとの紐付けを解除することを実施するように構成される。
【００５１】
図４に示された実施態様は、この実施態様に対応する方法の実施態様であり、この実施態様は、図４に示された実施態様と連携して実施されても良い。図４に示された実施態様で言及された関連する技術的な詳細はなお、この実施態様で有効であり、よって繰り返しを削減するためにここでは説明されない。同様に、この実施態様で言及された関連する技術的な詳細はまた、図４に示された実施態様に適用されても良い。
【００５２】
加えて、本出願はさらに、図５乃至図８に示されたいずれか１つの実施態様における装置を含むモバイル端末に関する。
【００５３】
本発明の各装置の実施態様で言及された各ユニットは、論理ユニットであることに留意すべきである。物理的には、論理ユニットは、物理ユニットであっても良く、また、物理ユニットの一部であっても良く、さらに、複数の物理ユニットの組み合わせで実施されても良い。論理ユニット自体の物理的な実施態様の方式は、さほど重要でないが、論理ユニットによって実施される機能の組み合わせが、本発明で提起される技術的課題を解決するための鍵である。加えて、本発明の進歩的な部分を強調するために、本発明の各装置の実施態様は、本発明で提起される技術的課題に密接に関連しないユニットを導入しないが、これは、装置の実施態様が他のユニットを含まないことを示すものではない。
【００５４】
特許請求の範囲及び特許の明細書において、第１の及び第２のなどの関連する用語は、１つのエンティティまたは動作を別のエンティティまたは動作と区別するために使用されるにすぎないが、エンティティまたは動作がいずれかのそのような実際の関係またはそれらの間の順序を有することを必ずしも必要としないことがあり、そのことを意味するものでもないことがある。さらに、用語「ｉｎｃｌｕｄｅ（含む）」及び「ｃｏｍｐｒｉｓｅ（備える）」またはいずれかの他の変形は、一連の要素を含むプロセス、方法、項目もしくは装置が要素を含むだけでなく、明示的に列挙されてない他の要素をも含み、またはプロセス、方法、項目もしくは装置の本来の要素をも含むように、非排他的包含をカバーすることを意図している。さらなる限定なしに、「ｉｎｃｌｕｄｉｎｇ  ｏｎｅ（１つを含む）」との表現によって定義される要素は、要素を含むプロセス、方法、項目または装置が他の同様の要素をも有することを排除しない。
【００５５】
本発明が本発明のいくつかの好ましい実施態様を参照して例示及び説明されてきたが、本発明の精神及び範囲から逸脱しない形式及び詳細で、様々な変更が本発明になされても良いことを当業者は理解するはずである。
【図１】
0006685313.tif 000002
【図２】
0006685313.tif 000003
【図３】
0006685313.tif 000004
【図４】
0006685313.tif 000005
【図５】
0006685313.tif 000006
【図６】
0006685313.tif 000007
【図７】
0006685313.tif 000008
【図８】
0006685313.tif 000009