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
あなたのコードとエラーログを投稿する必要がありますあなたのための –