開発上の依存性
ネイティブ アプリケーションを Android のためにビルドする際、InterBase では、アプリケーションが Android エミュレータ/デバイスにデプロイされる前に、次の要件が設定されていることを想定しています。 InterBase は、ARMv7 デバイスをターゲットとする “android-9” プラットフォームで動作します。
要件 | FireDAC/dbExpress/IBX を使用する RAD/Delphi アプリケーション | カスタム データベース接続機能を使用する RAD/Delphi アプリケーション | |
---|---|---|---|
アプリケーション処理における INTERBASE 環境変数 Android での InterBase ToGo では、一時ファイルを書き込んだり、ライセンスや他のサポートされているデータベース ファイルを検索する、アプリケーション フォルダを知っておく必要があります。 それにはアプリケーションでは、InterBase の資産を書き込み可能な場所にコピーし、その後、INTERBASE 環境変数をその場所を指すように設定しておかなければなりません。 通常、これは、Android NDK アプリケーションに対して「外部の」ストレージ領域となります。 例: <package_name> は「com.example.native_activity」など 例: /data/data/<package_name>/files INTERBASE 環境変数を、「/data/data/<package_name>/files/interbase」に設定 |
データベース コンポーネントによって自動的に設定。 アプリケーションでは何もしなくてよい。 | アプリケーションで、InterBase API を呼ぶ前にまず、初期化コードにおいて設定する必要がある。
アプリケーションにおいて、次と同様のコードを追加: {$IFDEF ANDROID}
procedure
SetInterBaseVariable;
var
M: TMarshaller;
begin
setenv('INTERBASE',
M.AsUtf8(GetFilesDir +
PathDelim +
'interbase').ToPointer, 1);
end;
{$ENDIF }
| |
AndroidManifest アクセス許可 InterBase では、AndroidManifest ファイルにおいて特定のアクセス許可の設定が必要となります。 INTERNET: アプリケーションにネットワーク ソケットへのアクセスを許可します。 リモート InterBase データベースにアクセスするクライアント/サーバー アプリケーションを構築している場合、この作業は必須です。これはまた、InterBase の「home 呼び出し」サイレント ライセンス登録でも必須です。 READ/WRITE EXTERNAL STORAGE: これは、読み書き操作を行うために、アプリケーション用の InterBase ファイル(データベース ファイルも含む)が配布される、外部ストレージの場所です。 |
詳細については、「使用する権限」を参照してください。
アクセス許可:
|
詳細については、「使用する権限」を参照してください。
アクセス許可:
| |
外部 NDK ライブラリでのリンク依存性 InterBase によって使用される C++ 例外処理をサポートするには、開発者は libstlport_static.a を自分のアプリケーションにリンクしなければなりません。
|
データベース コンポーネントによって自動的に設定。 アプリケーションでは何もしなくてよい。 | アプリケーションは、リンカにこのライブラリをインクルードするよう要求しなければならない。 |