4D for iOSには、初めてのモバイルアプリケーションを簡単に始められるように、いくつかの機能とコンセプトが盛り込まれています。ステップバイステップのチュートリアルに加えて、学習プロセスをスピードアップするためのヒントをブログ記事で提供します。この投稿では、4D for iOSの重要なコンセプトを探ります。モバイルセッション管理
モバイルセッション管理
モバイルセッション管理は、最初のユーザーリクエストの後、ユーザーを追跡することができるようになります。簡単に言うと、各ユーザーを識別し、ユーザー要求のステータスを承認 または 保留に変更することで、アプリデータへのアクセスを許可またはブロックする能力を保証します。
4D開発者であれば、モバイルアプリから4Dサーバーにアクセスするユーザーを認証できるため、セッションはサーバーデータの安全性を確保する上で大きな助けになります。
もう一つの使用例です。サーバー管理者の場合、セッション管理を使用して、4Dサーバーへの接続を許可するユーザーを定義し、アクセス権のある人だけにアクセスを制限することができます。
4D for iOSのセッション管理
4D for iOSでは、Mobile User JSONファイルを通して、誰があなたのアプリのデータにアクセスしようとしているのかをリアルタイムで特定することができます。これは、各アプリのユーザーのメール、App ID、Device IDなどの構造化された情報を提供します。
{ "application":{ "id":"com.contactApp.Contact", "name":"Contact", "version":"1.0.0" }, "team":{ "id":"DAVAZDX8W5" }, "language":{ "id":"en_US", "code":"en", "region":"US" }, "email":"david@4D.com", "device":{ "description":"iPhone X", "version":"11.3", "id":"0DC5132E-1EF4-407C-A832-5FE33D818AF3", "simulator":true }, "send":"link", "session":{ "id":"7023d9205074199d1c16fc00d24354e778137675", "ip":"::ffff:192.168.5.4" }, "status":"accepted", "token":"eyJhcHBOYW1lSUQiOiJjb20uY29udGFjdEFwcC5Db250YWN0IiwiaWQiOiI3MDIzZDkyMDUwNzQxOTlkMWMxNmZjMDBkMjQzNTRlNzc4MTM3Njc1IiwidGVhbUlEIjoiVVRUN1ZEWDhXNSJ9" }
ユーザーがアプリを初めて起動すると、Mobile Userファイルが作成され、MobileAppsフォルダの現在の4DDファイルの隣に保存されます。このフォルダには、アプリフォルダごとに整理され、グループ化された、すべてのモバイルユーザファイルが含まれています。
ユーザーのアクセスを処理するために、各モバイルユーザーファイルのステータスを手動で変更したり、さらに良い方法は、独自のインターフェースを作成することです
認証方法
On Mobile App Authenticationデータベースメソッドは、ユーザーが保留中のステータスを持ち、サーバーにアクセスしようとしたとき(例えば、データの再読み込みなど)、プログラム的にアクセスを許可またはブロックするために呼び出されます。この認証メソッドは、Publishingセクションのプロジェクトエディターから直接作成および編集することができます。
Create…ボタンをクリックすると、テンプレートが作成され、すぐに使用できるようになります。
C_OBJECT($0;$response)
C_OBJECT($1;$request)
$request :=$1// Informations provided by mobile application
$response :=New object // Informations returned to mobile application
// Check user email
If ($request.email
// Optional message to display on mobile App.=Null)
// No email means Guest mode - Allow connection
$response .success:=True
Else // Authenticated mode - Allow or not the connection according to email or other device property
$response .success:=True
End if
If ($response.success)
$response.statusText:="認証に成功しました"
Else
$response .statusText:="申し訳ありませんが、このアプリケーションを使用する権限がありません。"
End if
$0:=$response
ログインが必要です」をチェックすると、アプリ起動時にログインフォームが表示されます。また、アプリを「ゲスト」モードで使用するために、「Login required」オプションのチェックを外しておくこともできます。
4D for iOSアプリは、データを埋め込んでインストールされるため、ゲストユーザーは、初期データを見ることができるようになります。この場合、4D for iOSアプリでデータを再読み込みするためのアクセスのみを許可またはブロックすることができます。
受理済みと保留の両方のステータスについて、4D for iOSのユーザーエクスペリエンスに焦点を当てましょう。
受付済ステータス
受付済ステータスでログインが必要な場合。
- ユーザは、Eメールを入力します。
- 認証されたことを知らせる通知が表示されます。
- 設定画面からデータの再読み込みが可能
保留状態
ログインが必要で、ステータスが「保留」の場合
- ユーザーがEメールを入力
- アプリの利用が許可されていないことを知らせる通知が表示される
- すでにログインしているユーザーがステータスを保留に変更した場合、データの再読み込みはできず、ログインフォームにリダイレクトされます。
モバイルセッション管理をより簡単にするために、すぐに使えるコンポーネントを提供する予定です。ご期待ください。