2016-07-14 5 views
1

SignalRを使用してSignalR接続を制御しようとしています。接続が上にある場合、観察可能が主な活動から罰金や火災オブザーバーの作品:私はこのようサービスを開始した主な活動へObserverがSignalRオブジェクトをリッスンしていますが、Editextを設定しようとするとnullです。

mHubProxy.on("onConnected", 
      new SubscriptionHandler1<MessageReceived>() { 
       @Override 
       public void run(final MessageReceived msg) { 
        mHandler.post(new Runnable() { 
         @Override 
         public void run() { 
          Calendar calendar = new GregorianCalendar(); 
          calendar.getTime(); 
          Log.i("script","onConnected: " + calendar.getTime()+ " context: " + getApplicationContext()); 
          observableTask.setMessageReceived(msg); 
         } 
        }); 
       } 
      } 
      , MessageReceived.class); 

戻る:

Intent intent = new Intent(); 
    intent.setClass(mContext, RealTime.class); 
    bindService(intent, mConnection, Context.BIND_AUTO_CREATE); 

それはオブザーバー(アップデート)でモデルクラスを受けるのが、 txtChatMessage.setText()にしようとすると、nullです!

@Override 
public void update(Observable observable, Object data) { 
    messageReceived = (ObservableTask) observable; 
    try { 
     txtChatMessage = (EditText) findViewById(R.id.txtChatMessage); 
     txtChatMessage.setText(messageReceived.getMessageReceived().Sender); 
     Calendar calendar = new GregorianCalendar(); 
     calendar.getTime(); 
     Log.i("script", "update runOnUiThread: " + calendar.getTime() + " context: "); 
    } catch (Exception e) { 
     String error = e.getMessage(); 
     Log.i("script", "update Exception: " + error); 
    } 
} 

私はメインスレッド、UIスレッドなどの方法を試していますが、すべてのビューコンポーネントはnullです。私はサービスを使わずにsignalrを使うだけで、オブザーバはうまく動作します。だから誰でも私を助けることができますか?

ありがとうございます。

答えて

0

私は最終的に私の問題を解決しました、それはObserverでした、ただBroadcastReceiverに変更されました!!

関連する問題