В Visual Studio 2017 на C# делаю приложение с Socket.IO.Client и запускаю в эмуляторе (Android 6.0 и 8.0) - всё работает как часы.
Архивирую и устанавливаю на телефон (Android 6.0) - не работает Socket.IO.Client.
Не могли бы помочь, подсказать, почему так?
MainActivity.cs
using Android.App;
using Android.Widget;
using Android.OS;
using Android.Support.V7.App;
using SocketIO.Client;
using System.Threading;
namespace App6
{
[Activity(Label = "Программулина", Theme = "@style/AppTheme", MainLauncher = true, Icon ="@mipmap/exit")]
public class MainActivity : AppCompatActivity
{
private Socket socket;
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.activity_main);
TextView info = FindViewById<TextView>(Resource.Id.textView1);
info.Text = "Проверочка";
//ДО СЮДА ВЫПОЛНЯЕТСЯ
socket = IO.Socket("http://192.168.0.100:3333");
socket.Connect();
socket.On(Socket.EventConnect, (data) => {
Print("Коннект", info);
socket.Emit("add user", "Xamarin Android");
});
socket.On("message",(data)=>
{
Print(data[0].ToString(), info);
});
}
private void Print (string text, TextView info)
{
RunOnUiThread(() => { info.Text = text; });
}
}
}
ПРОБЛЕМУ РЕШИЛ добавление манифеста:
<uses-permission android:name="android.permission.INTERNET" />
А почему при установке он не спрашивает разрешения на использование сети? Пишет: "Специальных прав доступа не требуется"