在Kindle Fire上调试Xamarin应用程序时无法访问网络

时间:2016-07-21 18:35:42

标签: c# xamarin restsharp kindle-fire

原标题:在Kindle Fire上调试Android应用程序时使用REST调用

现在有了更多信息,原始标题无法解决问题

我是Android开发和C#的新手(我更习惯于VB.net),所以我很抱歉这是一个明显的问题,还是我在说奇怪的事情。

我正在尝试为我的Kindle Fire制作一个应用程序,当按下按钮打开灯时会发出REST命令。我已经让它工作到应用程序在Kindle上加载并按下按钮改变亮度,但是当我用REST命令替换亮度代码时它不起作用。

我正在使用:

  1. Visual Studio 2015
  2. Xamarin.Android for Visual Studio
  3. Kindle Fire gen 5,FireOS 5.1.4
  4. RESTSharp
  5. Android SDK 5.1 API 22
  6. Kindle USB ADB驱动程序
  7. 这是我的MainActivity.cs:

    using System;
    using Android.App;
    using Android.Widget;
    using Android.OS;
    using RestSharp;
    
    namespace Light_Console
    {
        [Activity(Label = "Light Console", MainLauncher = true, Icon = "@drawable/icon")]
        public class MainActivity : Activity
        {  
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
    
            SetContentView(Resource.Layout.Main);
    
            Button but1 = FindViewById<Button>(Resource.Id.button1);
            but1.Click += (object sender, EventArgs e) =>
            {
                var client = new RestClient("http://192.168.1.124/api/********/lights/13/state");
                var request = new RestRequest();
    
                request.Method = Method.PUT;
                request.AddHeader("Accept", "application/json");
                request.Parameters.Clear();
                request.AddParameter("application/json", "{ \"on\":false }", ParameterType.RequestBody);
    
                var response = client.Execute(request);
                var content = response.Content;
            };
        }
      }
    }
    

    我试过了:

    1. 运行与桌面应用程序相同的代码,它在哪里工作,当我点击按钮时REST命令就完成了 - 非常烦人。
    2. 重新安装Android SDK - 没有运气
    3. 一个不同的Kindle - nope
    4. 启用Android清单中的每个权限,以阻止访问网络 - nada。 (注意:我已经启用了INTERNET权限)
    5. Xamarin的另一个示例应用程序使用网络来获取天气,但这也没有解决。
    6. 断开USB后仍然没有运行应用程序。
    7. 自原帖以来,我尝试过:

      1. 单步执行应用程序并没有收到任何错误,也没有明显的问题迹象,它仍然无效。
      2. 尝试调试到Android模拟器,在该环境中,应用程序正常工作,指示灯熄灭。
      3. 可以在正在调试的应用中访问互联网,还是以某种方式被阻止?如果是这样,那怎么允许这个呢?

        我现在知道可以在调试时访问互联网

        如果有人有任何建议可以试试,我很乐意听到。

        提前致谢。

0 个答案:

没有答案