wiki john Ответов: 0

Данных на localhost не работают на того, как Genymotion


I want to run my .Net Web Api simple program on Android App. But it does not run I don't know what is going wrong. the following is the Visual Studio code:


namespace MyFirstWebApi.Controllers
   {
     public class ValuesController : ApiController
      {
       // GET api/values
      public IEnumerable<string> Get()
       {
      return new string[] { "value1", "value2" };
       }

        // GET api/values/5
       public string Get(int id)
       {
      return "value";
        }

        // POST api/values
       public void Post([FromBody]string value)
      {
       }

       // PUT api/values/5
        public void Put(int id, [FromBody]string value)
       {
        }

        // DELETE api/values/5
        public void Delete(int id)
       {
       }
      }
    }

I want to run my .Net Web Api simple program on Android App. But it does not run I don't know what is going wrong. the following is the Visual Studio code:

               namespace MyFirstWebApi.Controllers
     {
       public class ValuesController : ApiController
        {
         // GET api/values
        public IEnumerable<string> Get()
         {
        return new string[] { "value1", "value2" };
         }

          // GET api/values/5
         public string Get(int id)
         {
        return "value";
          }

          // POST api/values
         public void Post([FromBody]string value)
        {
         }

         // PUT api/values/5
          public void Put(int id, [FromBody]string value)
         {
          }

          // DELETE api/values/5
          public void Delete(int id)
         {
         }
        }
      }
And this is the Android stude code:

             srvr.setOnClickListener(new View.OnClickListener() {
                @Override
               public void onClick(View view) {
                  String url="http://192.168.56.1:8240/api/values";
            final RequestQueue requestQueue = 
               Volley.newRequestQueue(MainActivity.this);
            StringRequest stringRequest = new 
                  StringRequest(Request.Method.POST, url,
                    new Response.Listener<String>() {

                        @Override
                        public void onResponse(String response) {
                            srveces.setText(response);
                            requestQueue.stop();

                        }
                    }, new Response.ErrorListener() {

                @Override
                public void onErrorResponse(VolleyError error) {
                    srveces.setText("error");
                    error.printStackTrace();
                    requestQueue.stop();
                }

            });
            requestQueue.add(stringRequest);




             }

          });
I used ip but did'nt work.I used genymotion ip which 10.0.3.15 it also did'nt work. I used http://localhost:8240/api/values it also not work. It run on computer Browser correctly. But I want to show this simple text on my app textview


Что я уже пробовал:

Я старался изо всех сил.Но все равно я не получаю никакого результата.

Richard Deeming

"localhost" означает компьютер, на котором в данный момент выполняется код. Ваша служба .NET не размещена на вашем Android-устройстве, так что это не сработает.

Вам необходимо использовать правильный IP-адрес и номер порта для компьютера, на котором размещена ваша служба. Если это частный IP-адрес, то Android-устройство должно быть подключено к той же сети.

wiki john

Использование ipconfig:
он показывает под ppp адаптером беспроводной терминал ZTE:
IPv4-Адрес.... 119.154.167.103
И под адаптером Ethernet VirtualBox Host-only network:
IPv4-Адрес..... 192.168.56.1
Итак, какой из них правильный, я использовал оба, но не работал

0 Ответов