zoukankan      html  css  js  c++  java
  • Android与Tomcat服务器的应用

    在Tomcat的根目录中放入一张图片...webappsROOTpeople,jpg,利用手机和服务器交互j获取这个图片,桌面布局就是简单的线性布局,代码:
    <TextView
    android:textSize="25dp"
    android:text="服务器图片的地址:"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />
    <EditText
    android:id="@+id/et_pct"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>

    <Button
    android:id="@+id/btn_search"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>

    <ImageView
    android:id="@+id/iv_pic"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>
    通过输入服务器地址,点击按钮就可以实现查看Tomcat的图片:
    主要代码:
    Handler mHandler = new Handler() {
    public void handleMessage(android.os.Message msg) {
    IvPic.setImageBitmap(mBitmap1);
    }
    };

    private void initConnnect() {
    new Thread(new Runnable() {
    @Override
    public void run() {
    String url_path = EtPct.getText().toString().trim();
    if (TextUtils.isEmpty(url_path)){
    Toast.makeText(MainActivity.this, "请输入图片网址", Toast.LENGTH_SHORT).show();
    }else{
    try {
    URL url = new URL(url_path);
    HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
    urlConnection.setRequestMethod("GET");
    urlConnection.setConnectTimeout(5000);
    if (urlConnection.getResponseCode()==200) {
    InputStream inputStream = urlConnection.getInputStream();
    mBitmap1 = BitmapFactory.decodeStream(inputStream);
    if (mBitmap1 == null) {
    Toast.makeText(MainActivity.this, "图片获取错误", Toast.LENGTH_SHORT).show();
    } else {
    mHandler.sendEmptyMessage(0);
    }
    }
    } catch (Exception e) {
    e.printStackTrace();
    }

    }
    }
    }).start();
    }


    点击按钮触发initConnnect()这个方法,由于请求服务器比较耗时,开启子线程进行请求。
    最后别忘了加入权限:<uses-permission android:name="android.permission.INTERNET"/>
    如果还无法访问,那就是你电脑防火墙开了,把防火墙关了,就可以了。效果图:

    注意:IP地址要用电脑IP地址,不能用10.0.2.2.
    。这个就可以实现简单访问服务器图片。
    如果引用Xutils框架,代码则更加方便:
    mBitmapUtils = new BitmapUtils(MainActivity.this);
    String url_path = EtPct.getText().toString().trim();

    mBitmapUtils.display(IvPic,url_path);
    这样就可以实现访问了。
    但是引用Xutils需要加入权限:
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

    引入这个库就行:

    就可以了。是不是还是感觉Xutils比较方便。

  • 相关阅读:
    Java 集合深入理解(15):AbstractMap
    数据库服务器的性能调优
    重温数据结构:哈希 哈希函数 哈希表
    Linux 虚存 linux2.6内核特性
    不想做却不得不做某份工作,怎么破?
    Java 集合深入理解(14):Map 概述
    Linux 虚存的性能问题
    Android重写getResources规避用户调整系统字体大小影响Android屏幕适配
    Android CardView设置成普通的Framelayout
    linux系统性能监控--网络利用率
  • 原文地址:https://www.cnblogs.com/zpfwin/p/7055986.html
Copyright © 2011-2022 走看看