I want to create a function which asks for turning on bluetooth till user does it. I have the code which asks user to enable the bluetooth:
var enableBluetooth = new Intent(BluetoothAdapter.ActionRequestEnable);
StartActivityForResult(enableBluetooth,1);
And I want to see the results using OnActivityResult:
protected override void OnActivityResult(int requestCode, [GeneratedEnum] Result resultCode, Intent data)
{
base.OnActivityResult(requestCode, resultCode, data);
if (requestCode == 1)
{
if (resultCode == Result.Ok)
{
Console.WriteLine(" Ok");
}
else if (resultCode == Result.Canceled)
{
Console.WriteLine("Canceled");
}
else Console.WriteLine("Other Error");
}else Console.WriteLine("Wrong request code");
}
And if I click Ok i can see in output window Ok, but when I press cancel any of comments are not being displayed.
Refering android developper :
https://developer.android.com/training/basics/intents/result and bluetoothChat :https://github.com/googlesamples/android-BluetoothChat
Try this as an Activity result :
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 1) {
if (resultCode == RESULT_OK)
Toast.makeText(getActivity(), "OK",Toast.LENGTH_SHORT).show();
else
Toast.makeText(getActivity(), "NOK", Toast.LENGTH_SHORT).show();
}
}
On Xamarin following chatexample : https://github.com/googlesamples/android-BluetoothChat
onActivityResult should looklike this :
public override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
switch (requestCode)
{
case 1:
if (Result.Ok == resultCode)
{
Toast.makeText(getActivity(), "OK",Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(getActivity(), "NOK",Toast.LENGTH_SHORT).show();
}
break;
}
}