1

我创建了一个从 Web 服务读取数据的应用程序。但是当我试图在真实设备上运行它时。这没用。它只是停在第一个屏幕上,除了应用程序的标题之外什么都不显示。似乎可以从网络服务加载数据。我需要配置什么?

该应用程序具有互联网权限,但现在不需要,因为该服务正在本地运行。有什么想法或类似的经历吗?

主要类:

public class Dashboard extends FragmentActivity implements OnClickListener, ClientDetailActivity.OnHeadlineSelectedListener {

Button btnConociendoAlCliente, btnMaterialDeApoyo, btnMaterialPromocional;

LinearLayout panelConociendoAlCliente, panelMaterialDeApoyo,
        panelMaterialPromocional, panelFragment;
Fragment listFragment;
ClientDetailActivity clientDetailActivity;

private ListView list;


public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_dashboard);

    initComponents();
}

public void initComponents() {

    panelFragment = (LinearLayout) findViewById(R.id.panelFragment);
    panelMaterialDeApoyo = (LinearLayout) findViewById(R.id.panelMaterialDeApoyo);
    panelMaterialPromocional = (LinearLayout) findViewById(R.id.panelMaterialPromocional);

    panelFragment.setVisibility(View.GONE);
    panelMaterialDeApoyo.setVisibility(View.GONE);
    panelMaterialPromocional.setVisibility(View.GONE);

    btnMaterialDeApoyo = (Button) findViewById(R.id.btnMaterialDeApoyo);
    btnMaterialPromocional = (Button) findViewById(R.id.btnMaterialPromocional);
    btnConociendoAlCliente = (Button) findViewById(R.id.btnConociendoAlCliente);

    btnConociendoAlCliente.setOnClickListener(this);
    btnMaterialDeApoyo.setOnClickListener(this);
    btnMaterialPromocional.setOnClickListener(this);

    clientDetailActivity = new ClientDetailActivity();
    FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
    fragmentTransaction.add(R.id.listFragment, clientDetailActivity);
    fragmentTransaction.addToBackStack(null);
    fragmentTransaction.commit();

}

我的网络服务只是从关于客户端的数据库日期收集的。这是代码:

HttpClient httpClient = new DefaultHttpClient();
        HttpGet del = new HttpGet(ruta + "s");
        del.setHeader("content-type", "application/json");

        try {
            HttpResponse resp = httpClient.execute(del);
            String respStr = EntityUtils.toString(resp.getEntity());
            JSONArray respJSON = new JSONArray(respStr);
            clientes = new String[respJSON.length()];

            for (int i = 0; i < respJSON.length(); i++) {

                JSONObject obj = respJSON.getJSONObject(i);

                // Log.e("nombre", idCli);
                ClienteDetallado clienteDetallado = new ClienteDetallado();

                try {
                    clienteDetallado.setCod_Medico(obj.getString("Cod_Medico"));
                } catch (Exception e) {
                    clienteDetallado.setCod_Medico("N/A");
                }

                try {
                    clienteDetallado.setNombre(obj.getString("Nombre"));
                } catch (Exception e) {
                    clienteDetallado.setNombre("N/A");
                }

                try {
                    clienteDetallado.setApellido(obj.getString("Apellido"));
                } catch (Exception e) {
                    clienteDetallado.setApellido("N/A");
                }


                clienteDetallados.add(clienteDetallado);
            }

            MyOwnArrayAdapter myOwnArrayAdapter = new MyOwnArrayAdapter(getActivity(), clienteDetallados);
            list.setAdapter(myOwnArrayAdapter);

        } catch (Exception ex) {
            Log.e("ServicioRest", "Error en listar!", ex);
        }

        return view;
    }

它位于上面片段的 getView() 方法中。有 HttpClient 类使用的 URL。在模拟器中,一切正常。但不在设备中。

谢谢!

4

0 回答 0