私は現在、FBアプリから来たときにアプリを開くために使用された元のURLを知るために、urlhandler設定を操作しようとしています。(ドキュメントのディープリンクセクションを参照)
URL スキーム (パッケージ名、アクティビティ クラスとパス、http URL) を試してみましたが、Forge アプリで成功しませんでした。ネイティブ アプリの urlhandler リスナーがトリガーされません。
誰かがurlhandler forge モジュールの正しい使い方を教えてくれますか?
編集:最初のアプリケーションの起動中にトリガーされるurlhandlerイベントリスナーを作成することができました...ただし、例外があります:
Native call "urlhandler.urlLoaded" with task.params: {}
[ INFO] W/Forge (23672): Error while executing API method: urlhandler.urlLoaded
[ INFO] D/Forge (23672): Returning: {"content":{"type":"UNEXPECTED_FAILURE",
"message":"Forge Java error: NullPointerException: null",
"full_error":"java.lang.NullPointerException\n\tat io.trigger.forge.android.modules.urlhandler.API.urlLoaded(API.java:14)\n\tat java.lang.reflect.Method.invokeNative(Native Method)\n\tat java.lang.reflect.Method.invoke(Method.java:511)\n\tat io.trigger.forge.android.core.ForgeApp.callJavaFromJavaScript(ForgeApp.java:194)\n\tat io.trigger.forge.android.core.ForgeJSBridge.callJavaFromJavaScript(ForgeJSBridge.java:8)\n\tat android.webkit.JWebCoreJavaBridge.sharedTimerFired(Native Method)\n\tat android.webkit.JWebCoreJavaBridge.sharedTimerFired(Native Method)\n\tat android.webkit.JWebCoreJavaBridge.fireSharedTimer(JWebCoreJavaBridge.java:92)\n\tat android.webkit.JWebCoreJavaBridge.handleMessage(JWebCoreJavaBridge.java:108)\n\tat android.os.Handler.dispatchMessage(Handler.java:99)\n\tat android.os.Looper.loop(Looper.java:137)\n\tat android.webkit.WebViewCore$WebCoreThread.run(WebViewCore.java:1057)\n\tat java.lang.Thread.run(Thread.java:856)\n"},"status":"error","callid":"BDEEEAE6-1A7A-4608-A75F-CE53F2DB2677"}
このエラーを取得するために入力した urlscheme は次のとおりです。content://<package_name>
アプリが既に開いていて、一時停止してから Facebook のバイラルから再開したときに、まだイベントをトリガーできません。