Matrix.vNext
パッケージを使用して、Xamarin で単純な XMPP クライアントを作成しようとしています。
MainActivityに次の基本的なコードがあります。
using Android.App;
using Android.OS;
using Android.Widget;
using Matrix;
using System.Threading.Tasks;
namespace XmppAndroid
{
[Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)]
public class MainActivity : Activity
{
private ToastHandler handler;
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.activity_main);
var button = FindViewById<Button>(Resource.Id.button);
button.Click += delegate
{
Task task = new Task(Connect);
task.Start();
};
handler = new ToastHandler(this);
}
async void Connect()
{
var msg = new Android.OS.Message();
msg.Data.PutString("message", "Connecting...");
handler.SendMessage(msg);
var client = new XmppClient
{
Username = "username",
Password = "123456",
XmppDomain = "domain.com"
};
await client.ConnectAsync();
msg.Data.PutString("message", "Connected!");
handler.SendMessage(msg);
}
}
}
ToastHandler
トーストを作成する単純なハンドラーです。「接続中...」というメッセージが画面に表示されるので、実際に機能していることはわかっています。ただし、2 番目のメッセージは表示されません。クライアントが接続を拒否しているようです。
それを修正する方法はありますか?