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 可逆
Android面试收集录 网络与加密的更多相关文章
- Android面试收集录 Android入门
1.Android的特点有哪些? 编程语言是Java或Kotlin,Android中的Java字节码是允许在Dalvik虚拟机上的 支持4大组件 Android内置了WebKit核心的浏览器,支持H5 ...
- Android面试收集录14 Android进程间通信方式
一.使用 Intent Activity,Service,Receiver 都支持在 Intent 中传递 Bundle 数据,而 Bundle 实现了 Parcelable 接口,可以在不同的进程间 ...
- Android面试收集录6 事件分发机制
转自:秋招面试宝典. 一. 基础认知 1.1 事件分发的对象是谁? 答:事件 当用户触摸屏幕时(View或ViewGroup派生的控件),将产生点击事件(Touch事件). Touch事件相关细节(发 ...
- Android面试收集录2 Broadcast Receiver详解
1.Broadcast Receiver广播接收器简单介绍 1.1.定义 Broadcast Receiver(广播接收器),属于Android四大组件之一 在Android开发中,Broadcast ...
- Android面试收集录 Android系统的资源+其他
1.Android应用程序的资源是如何存储的,如何使用? res文件夹或者assets文件夹 res目录中的资源在R类中生成一个int变量,然后再布局文件中可以直接使用,在代码中,要getResour ...
- Android面试收集录 2D绘图与动画技术
1.如何在Android应用程序的窗口上绘制图形? 继承View 实现View中的onDraw()方法 2.如何绘制圆,空心椭圆? canvas.drawArc或canvas.drawCircle方法 ...
- Android面试收集录 电话、短信和联系人、多媒体技术
1.请写出调用系统拨号界面? Intent intent=new Intent(Intent.ACTION_DIAL,Uri.pase("tel:12345678910")); s ...
- Android面试收集录 数据库
1.SQLite数据库如何查询表table1的第20条到30条记录? select * from table1 limit 19,11 ==>从19开始,11个数据 2.如何才能将table ...
- Android面试收集录 文件存储
1.请描述Android SDK支持哪些文件存储技术? 使用SharePreferences保存key-value类型的数据 流文件存储(openFileOutput+openFileInput或Fi ...
随机推荐
- 2017软件测试_HW1_最近遇到的编程问题
最近遇到的错误:我对着网页源代码编写了一段爬虫语句,运行没有提示有错误,而且 可以抓取到全部的数据,但是不能按照要求将这些数据分到制定的位置. 发现问题原因:我把抓取到的字段对着网页源码看了一下,发 ...
- SAPGUI里实现自定义的语法检查
需求:在SAPGUI里点击这个语法检查的小图标或者直接按快捷键Ctrl+F2可以执行ABAP标准的语法检查. 如果需要实现SAPGUI里自定义的语法检查,比如,某团队强制要求应用程序类的每个方法的实现 ...
- QT隐含共享类 QSharedData QSharedDataPointer
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/davidsu33/article/details/28857391 QT中非常多类都实现了隐含共享比 ...
- 课堂笔记:HTML----------图片热点
HTML----------图片热点: 规划出图片上的一个区域,可以做出超链接,直接点击图片区域就可完成跳转的效果. 代码: <!DOCTYPE html PUBLIC "-//W3C ...
- 【luoguP1238】【NOIP2014】生活大爆炸版剪刀石头布
生活大爆炸版剪刀石头布 ——[传送门] 这道题可以原原本本地说得上是一道水题了,通过判断两人的出拳不同给分然后统计输出.就是对于游戏得分 ...
- java基础知识一览(二)
一.java基础知识 1.一个文件中只能有一个public的类,因为他的类名要求和文件名相同. 2.classpath变量可以设置其它目录下的类. 例如:类文件所在目录是:F:\Javajdk,那么没 ...
- ffmpeg视频和声音
推送视频和声音 ffmpeg -f dshow -i video="screen-capture-recorder" -f dshow -i audio="内装麦克风 ( ...
- 自定义AngularJS中的services服务
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...
- JavaScript高阶函数map/reduce、filter和sort
map() 举例说明,比如我们有一个函数f(x)=x²,要把这个函数作用在一个数组[1,2,3,4,5,6,7,8,9]上. 由于map()方法定义在JavaScript的Array中,我们调用Arr ...
- IPv6静态路由、动态路由
实验涉及命令以及知识补充 IPv6 接口必须配置 IPv6 地址和子网掩码 使用 ipv6 address ipv6-address/prefix-length [link-local | eui-6 ...