[Android サービス]
[ファイル]メニュー への移動
[ファイル|新規作成|その他...|Delphi プロジェクト|Android サービス]
Android サービスを開発するためのフレームワークを作成します。
[Android サービスの新規作成]ウィザードでは、以下の選択肢が提示されます。
項目 | 説明 |
---|---|
[ローカル サービス] |
このオプションを選択すると、ローカル サービスが作成されます。これは、Android アプリケーションが Android サービスと直接やり取りをし、その両方が同じプロセス上で動作するという、最も一般的な状況です。 このオプションでは、System.Android.Service ユニットの TAndroidService クラスを持つデータ モジュールと、必要なイベントとが含められます。 このオプションを選択すると、Android サービスにリンクされる Android アプリケーションの Android マニフェスト ファイルに、以下の行が追加されます。 <service android:exported="false" android:name="com.embarcadero.services.<service_name>" />
ローカル サービスの詳細は、「Local Service Sample(ローカル サービスのサンプル)」を参照。 |
[インテント ローカル サービス] |
このオプションを選択すると、インテントを使用したローカル サービスが作成されます。インテントを使用すると、非同期要求をオンデマンドで処理することができます。 このオプションでは、System.Android.Service ユニットの TAndroidIntentService クラスを持つデータ モジュールと、必要なイベントとが含められます。 このオプションを選択すると、Android サービスにリンクされる Android アプリケーションの Android マニフェスト ファイルに、以下の行が追加されます。 <service android:exported="false" android:name="com.embarcadero.services.<service_name>" />
インテント サービスの詳細は、「IntentService」を参照。 |
[リモート サービス] |
このオプションを選択すると、リモート サービスが作成されます。リモート サービスは、サービスを提供しているのとは別のアプリケーションから使用することができます。 このオプションでは、System.Android.Service ユニットの TAndroidService クラスを持つデータ モジュールと、必要なイベントとが含められます。 このオプションを選択すると、Android サービスにリンクされる Android アプリケーションの Android マニフェスト ファイルに、以下の行が追加されます。 <service android:exported="true" android:name="com.embarcadero.services.<service_name>" />
リモート サービスの詳細は、「Remote Service Sample(リモート サービスのサンプル)」を参照。 |
[インテント リモート サービス] |
このオプションを選択すると、インテントを使用したリモート サービスが作成されます。インテントを使用すると、非同期要求をオンデマンドで処理することができます。 このオプションでは、System.Android.Service ユニットの TAndroidIntentService クラスを持つデータ モジュールと、必要なイベントとが含められます。 このオプションを選択すると、Android サービスにリンクされる Android アプリケーションの Android マニフェスト ファイルに、以下の行が追加されます。 <service android:exported="true" android:name="com.embarcadero.services.<service_name>" />
|
ウィザードでいずれかのオプションを選択して[OK]をクリックすると、フォーム デザイナが開いて Delphi のプロジェクト ファイル(*.dpr ファイル)が表示されます。プロジェクトには、ビジュアル コンポーネントを配置するためのデータ モジュールが含められ、Android サービスと Android アプリケーションの間で共有したいメソッドが定義されます。
アプリケーションとサービスをリンクする方法の詳細は、「Android サービスの作成」を参照してください。
uses 句
<ユニット名>.pas ファイルには、以下のユニットが含められます。
System.SysUtils,
System.Classes,
System.Android.Service,
AndroidApi.JNI.GraphicsContentViewText,
Androidapi.JNI.Os;
<プロジェクト名>.dpr ファイルには以下が含められます。
System.Android.ServiceApplication;
<Unit_name>;