4

这是一个纯Java项目,检查客户端和服务器之间的连接是否建立,查看接收到的流是否转换为字符串等。我想检查这些步骤是否在我的Android项目中工作。System.out.printa或的等价物是什么.println

public class TestConnect {

    static String result = "";

    public static void main(String[] args) {

        try {
            HttpClient httpclient = new DefaultHttpClient();
            HttpPost httppost = new HttpPost("http://127.0.0.1/index.php");

            HttpResponse response = httpclient.execute(httppost);
            HttpEntity entity = response.getEntity();
            InputStream is = entity.getContent();
            System.out.println(is);

            try {
                BufferedReader reader = new BufferedReader(
                        new InputStreamReader(is, "UTF-8"), 8);
                StringBuilder sb = new StringBuilder();
                String line = null;

                while ((line = reader.readLine()) != null) {
                    System.out.print(line);
                    sb.append(line + "\n");
                }

                is.close();
                result = sb.toString();
            } catch (Exception e) {
            }

            try {
                JSONArray jArray = new JSONArray(result);

                for (int i = 0; i < jArray.length(); i++) {
                    JSONObject json_data = jArray.getJSONObject(i);
                    json_data.getString("nom");
                    // json_data.getInt("Id_Patients");

                    System.out.println(json_data.getString("nom"));
                    // r.add(json_data.getString("categorie"));
                }
            } catch (Exception e) {
            }
        } catch (Exception e) {
        }
    }
}
4

4 回答 4

3

使用内置记录器

文档中的复制粘贴:通常,使用

  • 日志.v()
  • 日志.d()
  • 日志.i()
  • 日志.w()
  • 日志.e()

方法。

详细程度从少到多的顺序是 ERROR、WARN、INFO、DEBUG、VERBOSE。除非在开发期间,否则永远不应将详细信息编译到应用程序中。调试日志被编译,但在运行时被剥离。始终保留错误、警告和信息日志。

提示:一个好的约定是在你的类中声明一个 TAG 常量:

private static final String TAG = "MyActivity";

并在后续调用日志方法中使用它。

提示:当您拨打电话时,请不要忘记

Log.v(TAG, "index=" + i);

当您构建要传递给 Log.d 的字符串时,编译器使用 StringBuilder 并且至少发生三个分配:StringBuilder 本身、缓冲区和 String 对象。实际上,还有另外一个缓冲区分配和复制,对gc的压力更大。这意味着如果您的日志消息被过滤掉,您可能会做大量工作并产生大量开销。

于 2012-11-25T16:17:47.280 回答
1

使用日志类。

Log.i("TAG", "info");
Log.d("TAG", "debug");
于 2012-11-25T16:18:45.827 回答
1

可以使用System.out.println()它的行为与Log.i(TAG, String);

但是在 Android 中,您可以使用各种 Log 方法:

  • Log.v()- 详细
  • Log.d()- 调试
  • Log.i()- 信息
  • Log.w()- 警告
  • Log.e()- 错误
于 2012-11-25T16:19:56.947 回答
1

使用Log在 LogCat 中打印所需的值。

Log.v(MYTAG, myString);

MYTAG :您希望与日志消息关联的标签,以便您以后可以归档 LogCat 消息以仅检查所需的消息。

myString :您要写入日志的值,字符串格式。

您可以根据您希望将日志消息标记为的方式使用 Log.v()、Log.d()、Log.i()、Log.w()、Log.e() 中的任何日志方法。例如,如果要将日志消息标记为调试消息,请使用Log.d()

于 2012-11-25T16:13:36.533 回答