本篇文章给大家谈谈网络–Linux和Android之间的网络文件共享,以及linux与android的知识点,同时本文还将给你拓展@id和@android之间的区别:id、AndroidC++系列:L
本篇文章给大家谈谈网络 – Linux和Android之间的网络文件共享,以及linux与android的知识点,同时本文还将给你拓展@id和@android之间的区别:id、Android C++系列:Linux网络(一)网络模型、Android html5和Android之间的交互、android 通过url打开网络文件等相关知识,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:- 网络 – Linux和Android之间的网络文件共享(linux与android)
- @id和@android之间的区别:id
- Android C++系列:Linux网络(一)网络模型
- Android html5和Android之间的交互
- android 通过url打开网络文件
网络 – Linux和Android之间的网络文件共享(linux与android)
我想用我的Android手机分享外置硬盘的内容.
在过去的两个小时里,我一直在尝试正确设置Samba – 这绝对是可怕的.
必须有另一种更简单的方法来通过(W)LAN设置文件共享,因为在恶劣和未知的环境中学习200个新的shell命令绝对不是我想浪费时间的东西.
是我的解决方案的FTP吗?
解决方法:
对于偶尔的文件共享,有WOOF (Web Offer One File).Woof很容易使用.它通过HTTP提供文件,还允许上传文件.这是用法:
Usage: woof [-i <ip_addr>] [-p <port>] [-c <count>] <file>
woof [-i <ip_addr>] [-p <port>] [-c <count>] [-z|-j|-Z|-u] <dir>
woof [-i <ip_addr>] [-p <port>] [-c <count>] -s
woof [-i <ip_addr>] [-p <port>] [-c <count>] -U
提供文件:
$woof filename
您可以通过包含-U开关来控制是否允许下载/上载文件.所需要的只是一个与woof交互的浏览器.
例
$woof Software\ Development\ Guide.docx
Now serving on http://192.168.1.20:8080/Software%20Development%20Guide.docx
@id和@android之间的区别:id
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ListView android:id="@android:id/list" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:layout_weight="1" />
<Spinner android:id="@+id/section_spinner"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:layout_margin="5dp" />
</LinearLayout>
@android:id和@id在这种情况下有什么区别?
解决方法:
在为视图定义自己的Id时需要使用@id,在本例中为section_spinner.并且当你需要在框架中将视图的Id设置为android的预定义Id时,使用@android:id.例如,当在TabHost中使用ListActivity,TabWidget / FrameLayout等时.
Android C++系列:Linux网络(一)网络模型
1. 计算机网络发展概览
第一代计算机网络的诞生:
- 1946年产生第一台数字计算机;
- 1954年收发器终端的产生;
- 60年代初,由多重线路控制器参与组成的网络被称为第一代计算机网络。
第二代计算机网络的诞生:
- 1964年,Baran提出存储转发概念;
- 1966年,David提出分组概念;
- 1969年,DARPA的计算机分组交换网ARPANET投入运行。
第三代计算机网络的诞生:
- 1977年OSI参考模型的提出,标志着计算机网络进入到第三个阶段
阶段总结
- 第一代:由多重线路控制器参与组成,面向终端的通信,计算机是网络的控制中心;
- 第二代:以资源子网为中心,ARPANET的成功运行;
- 第三代:OSI参考模型出现
2. 分层模型
分层作用:
- 用户服务层的模块设计可相对独立于具体的通信线路和通信硬件接口的差别
- 通信服务层的模块设计又可相对独立于具体用户应用要求的不同
- 总结:各层相互独立,可以互相不关心具体实现,如应用层不用关系传输是基于光线还是双绞线
2.1 OSI七层模型
- 物理层:主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后再转化为1、0,也就是我们常说的数模转换与模数转换)。这一层的数据叫做比特。
- 数据链路层:定义了如何让格式化数据以进行传输,以及如何让控制对物理介质的访问。这一层通常还提供错误检测和纠正,以确保数据的可靠传输。
- 网络层:在位于不同地理位置的网络中的两个主机系统之间提供连接和路径选择。Internet的发展使得从世界各站点访问信息的用户数大大增加,而网络层正是管理这种连接的层。
- 传输层:定义了一些传输数据的协议和端口号(WWW端口80等),如:TCP(传输控制协议,传输效率低,可靠性强,用于传输可靠性要求高,数据量大的数据),UDP(用户数据报 协议,与TCP特性恰恰相反,用于传输可靠性要求不高,数据量小的数据,如QQ聊天数据就 是通过这种方式传输的)。 主要是将从下层接收的数据进行分段和传输,到达目的地址后 再进行重组。常常把这一层数据叫做段。
- 会话层:通过传输层(端口号:传输端口与接收端口)建立数据传输的通路。主要在你的系统之间发起会话或者接受会话请求(设备之间需要互相认识可以是IP也可以是MAC或者是主机名)。
- 表示层:可确保一个系统的应用层所发送的信息可以被另一个系统的应用层读取。 例如,PC程序与另一台计算机进行通信,其中一台计算机使用扩展二一十进制交换码 (EBCDIC),而另一台则使用美国信息交换标准码(ASCII)来表示相同的字符。如有必要, 表示层会通过使用一种通格式来实现多种数据格式之间的转换。
- 应用层:是最靠近用户的OSI层。这一层为用户的应用程序(例如电子邮件、文件传输 和终端仿真)提供网络服务。
2.2 TCP/IP四层模型
TCP/IP是20世纪70年代中期美国国防部为ARPANET开发的网络体系结构,是开发程序员讨论最多的模型:
3. 总结
本文主要介绍了OSI与TCP/IP两种网络模型,它们的相同点:
- 两者都是以协议栈的概念为基础;
- 协议栈中的协议彼此相互独立;
- 下层对上层提供服务
不同点:
- OSI先有模型;TCP/IP是先有协议后有模型;
- OSI适用于各种协议栈,TCP/IP只适用于TCP/IP网络;
- 层次数量不同
Android html5和Android之间的交互
今天补充了会昨天的问题,然后搞半天又出现莫名其妙的问题。
今天讲的是交互,先说html5在Android的调用。
上面的hello world上面的部分都是安卓里的布局
然后按这些布局自动生成代码。
把那些该监听的监听,该调用的调用好,
然后:
这上面三个监听就是那三个按钮,
这几个都是调用js里面的方法,调用的方法就是
web1.loadUrl("javascript:fun2(\"" + str + "\")");
这就相当于连接了js的代码,但是前提得允许js的代码,
web1.getSettings().setJavaScriptEnabled(true);
然后fun2就是在html5里面写的一个方法:
下面其实可以清晰的看到,写按钮得在body里写,但是监听得是js写,注意的是在js里写的监听是js与Android交互用得到。
。
$开头的就是JQuery的标志,我们得导库进来。
这句话就是导库,不过会常常更新,得自己去菜鸟搜JQuery的库代码。
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>
addJavascriptInterface是WebKit的原生API,属于WebView对象的公共方法,用于暴露一个java对象给js,使得js可以直接调用方法。当然,java与js的相互调用也离不开loadUrl()方法的配合使用。但是addJavascriptInterface的使用也是有些问题,因为Android平台封装WebKit内核时,不同的版本中会有些不一致。
可以很好的看出,这个其实就是让html5的js监听调用Android的东西。
这两个参数,第一个是自己写的类,第二个是js调用Android要用的名字。
这是下面的内容:
得写好注解,不然就不能让js调用我们的Android,
@JavascriptInterface
然后这些方法,就是给在js里写的那些监听按钮用的,就可以和js里的东西交互了。
然后一行行移动代码的组合键 shift+alt+上 / 下
new 一些常用的监听,好像可以用 ctrl+alt+空格,这个不知道需不需要装插件Codota,反正我是装了之后采用的,
点第一个按钮:
那个方法1就是在js里写的,这边能输出,说明可以交互
这是第二个按钮,我们在输入框输入,然后相当于带参的方法传入js并输出
第三个是带返回值的js方法,我们调用它并返回(两个字符串的和),其实可以写两个数字的和,就得在js返回a*1+b*1,
当时我以为不能的,后面想想,+前后都是数字,那就是加号如果是字符串那就是连接符:
这个是调用js里的监听器
可以看到,监听成功了,还让安卓搞了个提示
,后面的都差不多,可以监听和调用方法,并且还可以发送网络请求。
ok,完成(今天的麻烦是,每次用这个就会循环一些废话,挺难受的,而且好像只有我的机子才这样,我怕我是被嫌弃了。。。)
如果遇到循环的这种情况(百度好像找不到)原因也不晓得,但是该输出的还是有,但是得自己慢慢找。
android 通过url打开网络文件
最近做了个项目,在服务器上有个word文档,我在android端可以获取它的url,http://xxxxx/xx/xx.doc。
我想在android端不用下载就能打开,怎么实现啊?或者说这个文件是只读的,不能下载。怎么打开啊?
求高手指教!!!!
关于网络 – Linux和Android之间的网络文件共享和linux与android的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于@id和@android之间的区别:id、Android C++系列:Linux网络(一)网络模型、Android html5和Android之间的交互、android 通过url打开网络文件的相关信息,请在本站寻找。
本文标签: