Я начинаю разработку Android. Я пытаюсь получить данные через службу данных WCF. Служба настроена на возврат данных в формате atom и json.Потребляйте службу данных WCF в Android-клиенте
Я использую библиотеку odata4j. Мой код ниже ...
public class Welcome extends Activity {
Button call;
ListView list;
ArrayList categories;
ArrayAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_welcome);
setTitle("WCF Example");
call = (Button) findViewById (R.id.mybtn);
list = (ListView) findViewById(R.id.mylistview);
categories = new ArrayList();
call.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
new callService().execute();
}
});
}
public class callService extends AsyncTask<Void, Void, ArrayList<String>> {
@Override
protected ArrayList<String> doInBackground(Void... params) {
ODataConsumer c = ODataJerseyConsumer.create("http://217.37.219.177:82/EbosDataService.svc");
List<OEntity> listEntities = c.getEntities("driver_details").execute().toList();
System.out.println("Size"+ listEntities.size());
if (listEntities.size() > 0) {
for (OEntity entity : listEntities) {
categories.add(entity.getProperty("DriverID").getValue().toString()
+ " - "
+ entity.getProperty("DriverFirstName").getValue());
}
}
return categories;
}
@Override
protected void onPostExecute(ArrayList<String> result) {
super.onPostExecute(result);
adapter = new ArrayAdapter<String>(Welcome.this,
android.R.layout.simple_list_item_1, result);
list.setAdapter(adapter);
}
}
}
При запуске приложение перестает отвечать на запросы. Пожалуйста, смотрите журнал
http://217.37.219.177:85/errorlog.txt
Однако, когда я достигаю http://services.odata.org/Northwind/Northwind.svc мой код работает. См. Журнал
http://217.37.219.177:85/successlog.txt
Я думаю, что с моим сервисом что-то не так. Я не могу решить эту проблему, поскольку я использую одну и ту же услугу в другом сетевом клиенте dot, и она работает нормально.
Любая помощь будет очень признательна.
Спасибо.