InAppMessaging
@objc(KRTInAppMessaging)
public class InAppMessaging : NSObject
extension InAppMessaging: Library
extension InAppMessaging: ActionModule, UserModule, TrackModule
アプリ内メッセージの管理を行うクラスです。
-
共有インスタンスを返します。
Declaration
Swift
@objc public static let shared: InAppMessaging
-
アプリ内メッセージで発生するイベント等を委譲するためのデリゲートインスタンスを取得・設定します。
Declaration
Swift
@objc public weak var delegate: InAppMessagingDelegate?
-
アプリ内メッセージ表示用のWebViewが利用するプロセスプールを保持します。
なお以下のケースを除いてプロセスプールの設定を行う必要はありません。
アプリ側で独自に用意したWebViewに紐付けられたセッションクッキーをWKHTTPCookieStore
から取得するケース。WKWebsiteDataStore
の現在の実装では、複数あるプロセスプールからひとつのプロセスプールを選択して、そこからクッキー(セッションクッキーも含む)を得る仕様です。
セッションクッキーはプロセスプールに紐付く仕様であるため、複数のプロセスプールが存在する状況下においてはセッションクッキーが取れない場合があります。
これを回避するためには、アプリ側のWebViewとアプリ内メッセージ表示用のWebViewでプロセスプールを共有する必要があります。Declaration
Swift
@objc public var processPool: WKProcessPool?
-
アプリ内メッセージの表示有無を返します。
アプリ内メッセージが表示中の場合は
true
を返し、表示されていない場合はfalse
を返します。Declaration
Swift
@objc public var isPresenting: Bool { get }
-
ローダークラスが Objective-Cランライムに追加されたタイミングで呼び出されるメソッドです。 本メソッドが呼び出されたタイミングで、
KarteApp
クラスに本クラスをライブラリとして登録します。Declaration
Swift
@objc public class func _krt_load()
-
指定したViewに関連するシーンにおけるアプリ内メッセージの表示有無を返します。
iOS12以下では、
isPresenting
と同様の挙動になります。Declaration
Swift
@objc public func isPresenting(view: UIView) -> Bool
Parameters
view
シーンに関連するView
Return Value
アプリ内メッセージが表示中の場合は
true
を返し、表示されていない場合はfalse
を返します。 -
現在表示中の全てのアプリ内メッセージを非表示にします。
Declaration
Swift
@objc public func dismiss()
-
指定したViewに関連するシーンに表示されているアプリ内メッセージを非表示にします。
iOS12以下では、
dismiss()
と同様の挙動になります。Declaration
Swift
@objc public func dismiss(view: UIView)
Parameters
view
シーンに関連するView
-
アプリ内メッセージの表示を抑制します。
なお既に表示されているアプリ内メッセージは、メソッドの呼び出しと同時に非表示となります。
Declaration
Swift
@objc public func suppress()
-
指定したViewに関連するシーンにおけるアプリ内メッセージの表示を抑制します。
なお既に表示されているアプリ内メッセージは、メソッドの呼び出しと同時に非表示となります。
Declaration
Swift
@objc public func suppress(view: UIView)
Parameters
view
シーンに関連するView
-
アプリ内メッセージの表示抑制状態を解除します。
Declaration
Swift
@objc public func unsuppress()
-
指定したViewに関連するシーンにおけるアプリ内メッセージの表示抑制状態を解除します。
Declaration
Swift
@objc public func unsuppress(view: UIView)
Parameters
view
シーンに関連するView
-
Declaration
Swift
public static var name: String { get }
-
Declaration
Swift
public static var version: String { get }
-
Declaration
Swift
public static var isPublic: Bool { get }
-
Declaration
Swift
public static func configure(app: KarteApp)
-
Declaration
Swift
public static func unconfigure(app: KarteApp)
-
Declaration
Swift
public var name: String { get }
-
Declaration
Swift
public var queue: DispatchQueue? { get }
-
Declaration
Swift
public func receive(response: [String : JSONValue], request: TrackRequest)
-
Declaration
Swift
public func reset(sceneId: SceneId)
-
Declaration
Swift
public func resetAll()
-
Declaration
Swift
public func renew(visitorId current: String, previous: String)
-
Declaration
Swift
public func prepare(event: Event, sceneId: SceneId) -> Event
-
Declaration
Swift
public func intercept(urlRequest: URLRequest) throws -> URLRequest
-
Declaration
Swift
public func provideEventRejectionFilterRules() -> [TrackEventRejectionFilterRule]