2016-03-22 2 views
0

Eventbusモジュールを含む(.jar)ファイルをバインドする必要があります。私がそれを呼び出すと例外が報告された:XXXActivity has no public methods called onEvent.jarにEventBusモジュールが含まれている場合

しかし、実際には、活性はonEventの方法を有していた。

お手伝いできますか?

ここに私のコードです!

[Activity(Label = "BaseActivity")] 
public class BaseActivity : Activity 
{ 
    protected override void OnCreate(Bundle savedInstanceState) 
    { 
     base.OnCreate(savedInstanceState); 

     //EventBus.Default.Register(this); 
     try 
     { 
      JMessageClient.RegisterEventReceiver(this.Application.ApplicationContext); 
     } 
     catch (Exception ex) 
     { 
      System.Diagnostics.Debug.WriteLine(" ==ex==" + ex.Message); 
     } 
     // Create your application here 
    } 

public void onEventMainThread(CN.Jpush.IM.Android.Api.Event.MessageEvent Event) 
    { 
     System.Diagnostics.Debug.WriteLine(" ==1=="); 
    } 
... 

} 

IMRecActivity

[Activity(Label = "IMRecActivity")] 
public class IMRecActivity : BaseActivity 
{ 
    protected override void OnCreate(Bundle savedInstanceState) 
    { 
     base.OnCreate(savedInstanceState); 
     // Create your application here 
    } 

public void onEvent(CN.Jpush.IM.Android.Api.Event.MessageEvent Event) 
    { 
     // CN.Jpush.IM.Android.Api.Event.MessageEvent me = (MessageEvent)Event; 
     CN.Jpush.IM.Android.Api.Model.Message msg = Event.Message; 
     switch (msg.ContentType.ToString()) 
     { 
      case "text": 
     TextContent textContent = (TextContent)msg.Content; 

       System.Diagnostics.Debug.WriteLine(" ==JMessage OnEvent==" + textContent.Text); 
       break; 
      default: 
       System.Diagnostics.Debug.WriteLine(" ==JMessage OnEvent==" + msg.Content); 
       break; 
     } 
     System.Diagnostics.Debug.WriteLine(" ==JMessage OnEvent=="); 

    } 
} 

JMessageClient.RegisterEventReceiver(this.Application.ApplicationContext)。これは、EventBusを.JARに登録するために使用されます。コードでは、私はonEventメソッドを宣言していますが、動作していないことがわかります。ところで、私はすでにjd-guiのようなツールを使ってその動作を確認しました。 .JARファイルをダウンロードする方法は次のとおりです。 https://www.jpush.cn/downloads/sdk/android/

中国のウェブサイトである公式サイトです。 https://www.jpush.cn/common/products

+0

あなたのコードとエラーログを投稿する必要がありますあなたのための –

答えて

0

私が期待されるメソッドの可視性が何であるかを確認するためにJD-GUI(http://jd.benow.ca/)のようなツールを使用して、それぞれの.jarを調査して推薦します。生成されたバインディングが作成された後で見つかった問題を解決するには、それぞれのメタデータ修正を使用できます。

https://gist.github.com/JonDouglas/dda6d8ace7d071b0e8cb

+0

おかげでURLをanswer.Butすることができます:私はあなたがに見ることのできるこの仕事を手伝うために、一般的なガイドを作成しました

それは間違っていますか? – kingcaigen

+0

@kingcaigen私は両方のURLを訪問することができます –

+0

@ cricket_007なぜ私は知りません、私はhttps://gist.github.com/JonDouglas/dda6d8ace7d071b0e8cbを訪問することはできませんhttps://github.com/ JonDouglas – kingcaigen

関連する問題