• 最新のSDKはどこで手に入りますか?

    管理画面にログインし、「SDK 及び 資料ダウンロード(最新版)」からダウンロードいただけます。

     

    ___SDK____________.png

  • ユーザーの位置情報はどのように取得していますか? 取得するタイミングは?

     

     

    iOS (ネットワーク測位モードで組み込んだ場合): 低

    • 大幅位置移動検出時
    • 滞在、移動開始検出時

     

    iOS (定期GPSモードで組み込んだ場合) :高

    • 大幅位置移動検出時
    • 滞在、移動開始検出時
    • 5分に1回

     

    Android

    • 5分に1回 ※組込時、SDKで任意に指定可能

     

    ほか、アプリをターミネートしてから再度起動した場合もGPS・セルベースの測位を得る事ができます。

     

    大幅位置移動検出時とは

    通信時に基地局からの情報を元に、位置情報取得しております。
    例として、Aという基地局の通信から、Bという基地局の通信に変わった場合に取得されます。

     

    滞在、移動開始検出時とは

    「緯度経度、到着時間、出発時間」をiOSが知らせてくれる仕組みから位置情報を検知しております。
    滞在の具体的な基準値やロジック等はOS側で、開示されているものではございませんのでご了承ください。

     

    位置情報をFANSHIPサーバーへ送るタイミングはこちらを参照ください。

  • SDKで取得したデータ(位置情報や許諾変更値など)を FANSHIP サーバーへ送るタイミングは?

    こちら でご確認ください。

  • iOS13 - アプリケーションに対する位置情報の使用許可

     

    iOS 13 以降、インストール時に表示される「位置情報許諾ダイアログ」について、位置情報の許諾ステータスの内容と遷移が変更されたため、弊社検証用アプリ を用いて確認した内容を掲載します。

     

    (1)「常に許可」の削除

    これまでは、位置情報の利用許可にあたって、ユーザーに対して「常に許可」「許可しない」「このAppの使用中のみ許可」の3つの選択肢が提示されましたが、iOS 13 からは、「常に許可」が削除され、かわりに「1度だけ許可」が追加されました。

    (2) 段階的権限昇格

    これまでは、Appが位置情報を利用する際に Appのインストール直後からユーザーに「常に許可」を選択肢として提示できるようになっていましたが、iOS 13 からは、「暫定的に『常に許可』」という内部状態を経由することで、はじめて(暫定ではない)「常に許可」の状態(位置情報利用認可)を獲得できるようになります。

     

    __________________03.jpg

     

     

    位置情報使用許可における「1度だけ許可」について

    Appを起動してから終了するまでの期間が「1度だけ」が指す範囲となります

     

     

     

  • 許諾ダイアログとアプリ内メッセージの表示が被ってしまいます(iOS)

     

    許諾ダイアログに応答したあとに同じ画面でアプリ内メッセージ表示をする制御は難しいため、
    「許諾ダイアログが出ているときは、アプリ内メッセージを表示しない」対応をお勧めします。

    // 通知が許可されているかどうかを確認
    UNUserNotificationCenter.current().getNotificationSettings { (settings) in
        switch settings.authorizationStatus {
        case .authorized:
            // 通知が許可されている場合
            break
        case .denied:
            // 通知が拒否されている場合
            break
        case .notDetermined:
            // 通知許諾状態が未定の場合
            break
        }
    }

     

    記載箇所などは 組込みガイド の「8 アプリ内メッセージの実装」を参考にしてください。

     

     

  • 管理画面からSDKダウンロードサイトにアクセスできず、ダウンロードができません。

     

    SDK 及び 資料ダウンロード(最新版)」にアクセスできず、以下のような画面が表示された場合、
    お手数ですが こちらのURL にアクセスいただき、ダウンロードをお願いいたします。

     

    SDK___________.png

     

    上記URLへアクセスできない場合、お客様の環境でインターネットへのアクセス制限を掛けられている可能性がございます。

    恐れ入りますが、社内ネットワークのアクセス制限のご確認をお願いいたします。

     

    また、アクセスできない場合、お問合せいただければ最新のSDKファイルをお送りすることも可能です。フォーム・またはメールにてご依頼ください。

  • アプリ内お知らせ(コンテンツ)の保存件数について教えてください。


    SDKのお知らせ一覧の表示件数はSDKの設定値で変更できます。

    初期値は iOS が100件、Android が1000件となっているので、適宜変更してください。

     

    変更は以下ファイルをご確認ください。


    Android

    /popinfo-sdk/res/values/popinfo_values.xml ファイル内

    public static final int MESSAGES_NUM_DEFAULT_VAL = 1000;

     

    iOS

    /lib/PopinfoConfiguration.m ファイル内

    int const popinfoMessagesMax = 100;
  • サイト閲覧数が正しく取得できていない

     

    Q. サイト閲覧数が「0」となり、正常に取得できていないようです。考えられる原因はなんでしょうか?

     

    A. HTMLコンテンツ内部のボタンからURL遷移した際のイベントトラッキングが行えていない可能性があります。お知らせ詳細画面をカスタマイズしている場合に多いです。

    iOSの場合

    下記のメソッドを利用してイベントトラッキングを行っています。

    <Apple公式>
    https://developer.apple.com/documentation/webkit/wknavigationdelegate/1455641-webview

     

    PopinfoDetailViewController を継承したクラスを新しく作った場合を想定すると、

    この継承先クラスで webView:decidePolicyForNavigationAction:decisionHandler: を新しく

    追加しているかどうかを確認してください。

    このメソッドを追加している場合、かつ、その中で

    [super webView:decidePolicyForNavigationAction:decisionHandler:] がコールされていない場合、イベントトラッキングが行われず、遷移数が取れていないと考えられます。

     

    Androidの場合

    カスタマイズ先のお知らせ詳細画面の webview に PopinfoMessageWebViewClient
    を設定してるかご確認ください。
    こちらが設定されていない場合、お知らせ詳細の HTML のリンク等で遷移しても遷移数が正常に取れません。

     

  • 【Android】フォアグラウンド時のみ位置情報取得可能と実装した場合のWi-Fi、beaconの挙動について

    Q. フォアグラウンド時のみ位置情報取得可能と実装した場合、Wi-Fi,beaconもバックグラウンド時には検知されませんか?

     

    A. Wi-Fi,beaconも位置情報と同様の定義となるためバックグラウンド時には検知されません。
    そのため、 フォアグラウンド時のみ位置情報取得可能と実装した場合は、
    アプリがフォアグラウンド時のみ、Wi-Fi,beacon,GPS配信受信可能となります。

     

    <補足>

    AndroidManifest.xml に以下を記載するか否かにより、バックグラウンド時に位置情報を取得するかどうかを選択できます。

    <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />

    ※記載した場合、バックグラウンド時に位置情報取得可能となります。

    GooglePlay への申請時に別途バックグラウンド位置情報のための申請が必要となりますのでご注意下さい。

  • お知らせ件数全件、お知らせ未読全件などを取得するようなメソッドはありますか?

     

    Q. お知らせ件数全件、お知らせ未読全件などを取得するようなメソッドはありますか?

     

    A. 

    【お知らせ件数全件】

    <iOS>

    // vc は PopinfoListBaseViewController のインスタンス
    lvc.retrieveAllPopinfoMessages().count

    ※ PopinfoConfiguration.m  にある popinfoMessagesMax の影響を受けるため、たとえば int const popinfoMessagesMax = 100; と設定されている場合、端末に対して100件以上のメッセージを送ったとしても、取得される件数は100になります

    ※ 上記実装はPopinfoListBaseViewController を継承したクラスで行うのが推奨されます。

     

    <Android>

    クラス PopinfoUtilsAsyncのgetPopinfoAllMessages

     

    【お知らせ未読全件】

    <iOS>

    クラスPopinfoReceiverのgetUnreadMessagesCounts

     

    <Android>

    クラス PopinfoUtilsAsyncのgetUnreadMessagesCount

     

    ※補足として、お知らせ全件、未読件数を上記で取得できますので、差し引けば既読件数も取得可能です。

  • iOS - プッシュ通知受信時のアラート表示(ポップアップダイアログ)を非表示にしたい

     

    IMG_0169.PNG

     

    上記画像のような、プッシュ通知受信時に表示されるアラートが表示されるのは

    以下のような実装を行っていると推測されます。

    こちらのコードを削除することにより、アラート(ダイアログ)は表示されなくなります。

    let alert = UIAlertController(title: "お知らせ", message: popup, preferredStyle: UIAlertController.Style.alert)
    alert.addAction(UIAlertAction(title: "閉じる", style: UIAlertAction.Style.default, handler: {(alert) in
    // 閉じるボタンが押された時は何もしない
    }))
    alert.addAction(UIAlertAction(title: "表示", style: UIAlertAction.Style.default, handler: {(alert) in
    // 表示ボタンが押された時はお知らせ詳細画面に遷移する
    }))
    self.window?.rootViewController?.present(alert, animated: true, completion: nil)

    UIAlertController を使用している箇所を検索し、お探しください。