• Android面试收集录 网络与加密


    1.创建Socket对象需要至少指定哪些信息?

    • IP(或域名)和端口号
    • Socket socket=new Socket("www.baidu.com",80);

    2.如何使用Socket连接服务器?

    • 建立一个Socket对象:Socket socket=new Socket("192.168.17.100",8080);
    • OutputStream os=socket.getOutputStream();
    • OutputStreamWriter osw=new OutputStreamWriter(os);
    • BufferedWriter bw=new BufferedWriter(osw);
    • 向服务器写数据:bw.write("hello world"); bw.flush();
    • 向服务器读数据:创建输入流同上,然后 while((s=br.readLine())!=null) ...

    3.使用Socket成功连接服务器后,如何获取服务器的IP和域名?

    • Socket socket=new Socket("www.baidu.com",80);
    • socket.getInetAddress().getHostAddress();
    • socket.getInetAddress().getHostName();

    4.Java提供的7个基本缓冲区是什么?

    • ByteBuffer
    • ShortBuffer
    • IntBuffer
    • CharBuffer
    • FloatBuffer
    • DoubleBuffer
    • LongBuffer

    5.WebView如何使用,如何向前和向后浏览历史页面?

    • WebView webView=(WebView)findViewById(R.id.webView);
    • webView.loadUrl("http://www.baidu.com");
    • 向前:webView.goForword();
    • 向后:webView.goBack();

    6.WebView如何显示一端String变量中的HTML代码?

    • webView.loadDataWithBaseURL("图书名",html字符串,"text/html","utf-8",null);
    • webView.getSettings().setJavaScriptEnabled(true);  //打开JavaScript功能
    • webView.setWebChromClient(new WebChromeClient()); //设置处理JavaScript的引擎

    7.请描述Android中Java与JavaScript如何交互?

    • 首先在Java中配置WebView的JavaScript,设置支持JavaScript,设置WebChromeClient等
    • 在JavaScript中调用Java方法需要使用WebView.addJavascriptInterface方法
    • 可以再JavaScript代码中调用window.接口名字.方法名字(参数名)来访问java方法

    8.请说出Android支持哪些访问HTTP资源的方式?

    • DefaultHttpClient通过HttpGet和HttpPost分别封装了GET和POST请求。
    • HttpURLConnection通过URL的构造方法,通过URL.openConnection方法获取HttpURLConnection

    9.上传文件到服务器,需要注意哪几点呢?

    • 如果使用HttpURLConnection对象向服务端发送数据,需要使用setDoOutput方法打开输入开关
    • 需要设置请求方法:httpURLConnection.setRequestMethod("POST");
    • 文件开头需要分界符:httpURLConnection.setRequestProperty("Content-Type","multipart/form-data;boundary="+boundary);
    • 文件结尾需要分界符:dos.writeBytes(twoHyphens+boundary+"--"+end);

    10.请简要解释一下什么叫HTTPS?

    • Secure Hypertext Transfer Protocal,安全超文本传输协议
    • HTTP的安全版本
    • 在HTTP下加入SSL层

    11.Android SDK支持访问HTTPS资源吗?

    • 支持的
    • 需要信任所有的host
    • 然后像访问HTTP资源一样使用httpClient和httpPost即可

    12.Android SDK 支持几种加密技术?

    • 4种
    • MD5+SHA+HMAC 不可逆
    • AES 可逆
  • 相关阅读:
    MFC对话框编程四:输入焦点的传递
    lua笔记 一个C++调用lua函数的类的实现
    [置顶] 设计模式之享元模式
    扩展实现PHP Benchmark
    TLD如何运行OpenTLD(TLD_HY20121127)
    [Oracle] Kill Session 经验总结
    php 该如何获取从百度搜索进入网站的关键词
    php+js实现百度地图多点标注的方法
    laraveladmin 报错 Disk [admin] not configured, please add a disk config in `config/filesystems.php`....
    PHP获取当前页面的url
  • 原文地址:https://www.cnblogs.com/Jason-Jan/p/8549865.html
Copyright © 2020-2023  润新知