У меня есть локальный веб-API в c #, работающий в VS17, который запускает и обращается к БД в SQL Express, используя основные методы HTTP.
И с другой стороны, я хочу (иметь основы) Android-приложение, которое должно получить доступ к API и просто генерировать простые запросы GET (в настоящее время использует Retrofit) , а затем отображать данные, которые был найден. Все отлично работает на сервере (проверено почтальоном).
Но мне не удалось получить доступ к моему API через приложение. Любое руководство о том, где мне нужно искать или как начать, было бы здорово!
Примечания: API размещается локально
SQLEXpress DB локальный
Android Device - эмулятор
Мне нужно использовать SQLExpress как SQlite
приватная финальная строка BASE_URL = "http://10.0.2.2:60060";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = (ListView)findViewById(R.id.pagination_list);
Retrofit.Builder builder = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create());
Retrofit retrofit = builder.build();
EmployeeAPIClient client = retrofit.create(EmployeeAPIClient.class);
Call<List<Employee>> call = client.allEmployees();
call.enqueue(new Callback<List<Employee>>() {
@Override
public void onResponse(Call<List<Employee>> call, Response<List<Employee>> response) {
List<Employee> employees = response.body();
Log.w("MainAct onResponse():", " response method called.");
if(employees.size() <= 0){
Log.w("EMPTY", " List is empty..");
}else {
for(Employee emp: employees){
Log.d("FirstName: " , emp.getFirstName());
Log.d("LastName: " , emp.getLastName());
Log.d("Gender: " , emp.getGender());
Log.d("Salary: " , emp.getSalary());
}
//listView.setAdapter(new EmployeeAdapter(MainActivity.this, employees));
}