0

私のアプリケーションでは、Androidで同期アダプタサービスを作成しようとしていますが、アプリが強制終了されたときにバックグラウンドで実行されます。私のアプリケーションでは、SendActionToJSはAndroidのバックグラウンドサービスでは動作しません

このサービスは、WL.getInstance()。sendActionToJS()を呼び出してjsにコントロールを送信します。

私が使用しています:

WL.App.setKeepAliveInBackground(true); 

方法を私はアプリが殺されているにもかかわらず、WLのインスタンスを使用することができています。このメソッドを使用して、バックグラウンドで生きているアプリを保つために。

onSync.java:

try { 
     JSONObject data = new JSONObject(); 

     data.put("isConnected", true); 

     data.put("connRes", "MOBILE"); 

     WL wl = WL.getInstance(); 

     if(wl!=null){ 

      L.e("WL is not null"); 

      wl.sendActionToJS("isConnected", data); 
     } 
     else{ 
      L.e("WL is null"); 
     } 


    } 

    catch (Exception e) { 
     // TODO: handle exception 
     e.printStackTrace(); 




    } 

main.js:

WL.App.setKeepAliveInBackground(true, options); 

WL.App.addActionReceiver("MIActionReceiverId", function actionReceiver(received){ 

    console.log('MIActionReceiverId . '+JSON.stringify(received)); 



    else if(received.action == 'isConnected') { 
     //Connectivity manager 
     console.log('isConnected. '); 

     var isConnected = received.data.isConnected; 
     console.log('isConnected. '+isConnected); 

    } 




    } 

WL.getInstance()sendActionToJS()メソッドは何もどちらも受けていないmain.jsに任意の例外とaddActionReceiverを投げないん。何でも

これは、アプリケーションが強制終了され、すべてが正常に動作しているときにバックグラウンドの残りの部分を実行するときに起こります。

答えて

1

以前の質問でも触れたように、MobileFirst Android SDKにはAndroidサービスなどで動作する正式なサポートはありません。このコンテキストで使用しようとするSDKのいくつかの側面が機能します。ではないかもしれない。

また、私はこの種のsendAction APIを使用しても正しいとは考えていません。

関連する問題