最近在学习Android开发,练练手做了个小应用:WiFi 文件共享程序(取了个名字——EyeTHS)
实现的功能很简单,就是使Android手机在有wifi的环境下,不需要数据线,实现局域网内所有终端(台式、笔记本、平板、手机、智能电视等支持wifi及TCP/IP的终端)都通过这台Android手机进行文件的共享(下载与上传,类似于将这台手机当做一台手机WEB服务器)。
参考其他类型软件,决定使用HTTP的方式进行文件传输,主要考虑的因素有:
1、现在的终端基本都支持浏览网页的操作,可以跨平台进行共享文件;
2、HTTP协议较容易实现,编程难度较小(对于简单应用而言);
程序的实现:
一共使用到5个类,这5个类及功能分别为:
1、MyHttpServerActivity类
整个程序的入口,负责启动共享服务,以及界面的交互;
2、HttpServer类
文件传输的控制器,模仿http的服务器做的一个类;
3、Request类
负责处理用户的请求操作(操作包括文件列表请求和上传文件请求);
4、Response类
负责相应用户的请求,返回对应的信息给用户;
5、CreateFile类
进行文件的操作;
共享文件的操作步骤:
安装完程序后会在sdcard目录下新建一个文件夹(eyeths),将你想要共享的文件放在此文件夹下即可,上传的文件也会放在此文件夹中,名称不会改动,所以别重名。特别要注意的是程序还有很多漏洞,最大的当属中文乱码,无论是上传和下载文件,文件名中不能存在中文及一些特殊字符。
程序还存在一些比较大的BUG:
1、中文乱码问题现在没有解决;2、IE浏览器不能正常上传文件;3、其他一些莫名奇妙的还没有查出来的问题……
整个工程放在附件中,希望大家多多提意见
心血来潮做了个幻灯片,英语水平有些,希望大家见谅。
分享到:
相关推荐
安卓手机(android)wifi传送文件源码可以实现一个android手机之间 , 手机和PC 之间 可以通过wifi相互传文件的程序 。亲测可用 :) 程序分为 android手机端的 apk 和 Pc端的 exe 两个 文件 。 程序会自己建立一个...
Android提供了`WifiManager`类,它是系统服务的一个接口,允许应用程序与WiFi硬件进行交互。通过获取`Context.getSystemService(Context.WIFI_SERVICE)`返回的`WifiManager`实例,我们可以调用一系列方法来控制WiFi...
【描述】:源码示例是学习和理解Android应用程序开发的重要资源,尤其是涉及到特定功能如WiFi文件传输时。这个项目提供了基本的UI界面,让用户能够直观地选择发送或接收文件,简化了文件共享的过程。源码中包含了...
在Android WIFI快传中,文件管理是一个重要的组成部分。用户可以通过内置的文件管理器或者第三方应用,选择需要传输的文件或文件夹。这些文件可以是图片、视频、音乐、文档等不同格式。系统会自动处理文件的打包和...
- 用户点击列表中的一个网络,系统会弹出输入密码的界面,要求用户输入正确的预共享密钥(PSK)以进行身份验证。 - 输入正确后,Android系统会尝试建立与WiFi热点的连接,并进行身份验证和密钥协商过程。 3. **...
Android系统基于Linux内核,提供了一个强大的网络框架,其中包括对Wi-Fi的支持。Wi-Fi驱动程序在硬件层与无线网卡通信,而Android的Wi-Fi服务则在用户空间提供接口,应用程序可以通过这些接口来控制Wi-Fi连接和数据...
在Android平台上,实现WiFi直连文件传输是一种常见的需求,特别是在设备间共享数据或者进行局域网游戏时。本文将深入探讨如何在Android中通过WiFi Direct技术实现文件传输,并基于提供的源码进行分析。 WiFi Direct...
2. **用户空间应用程序**:Android系统的设置应用可能需要更新,以提供一个用户界面来控制以太网共享的开关。此外,可能还需要修改或添加服务来处理网络状态的变化,如连接或断开以太网设备。 3. **权限管理**:...
这个项目提供了一个学习和参考的例子,帮助开发者理解和实现Android设备间的WiFi文件传输。通过研究源码,开发者可以了解到如何利用Android的API进行设备连接、文件传输以及适配不同Android版本的技巧。同时,这也是...
"android wifi开发简单demo"这个项目提供了一个基础示例,帮助开发者理解如何在Android设备上管理和使用WiFi功能。下面我们将深入探讨Android WiFi开发的相关知识点。 1. **WiFiManager**: Android系统提供了`...
标题中的“Android WIFI共享”指的就是这一功能,而描述则提到了一个特定的应用程序,可能是开发者修改过的版本,用于增强或优化原生系统的WIFI共享体验。 这个应用程序可能具有以下特点: 1. **文件传输**:通过...
在Android平台上,开发一个名为`WifiDemo`的应用程序涉及到对WiFi功能的全面理解和利用。这个应用的核心目标是提供用户友好的界面,使用户能够轻松管理设备的WiFi连接,包括开启、关闭WiFi,搜索并连接到可用的WiFi...
在"压缩包子文件的文件名称列表"中,`MyWifiP2P`可能是一个包含了上述流程实现的Android应用程序项目。开发者可能在此项目中实现了从Wi-Fi Direct的启用到数据传输的所有步骤,并可能提供了用户友好的界面来操作这些...
开发涉及Wi-Fi功能的Android应用时,需要在`AndroidManifest.xml`文件中添加必要的权限,如`ACCESS_FINE_LOCATION`(用于提升Wi-Fi扫描精度)和`CHANGE_WIFI_STATE`(用于改变Wi-Fi状态)。 8. **监听Wi-Fi状态...
本项目"Android Wifi Demo"提供了一个简单的示例,帮助开发者深入理解如何在Android应用中操作Wi-Fi接口。下面我们将详细探讨这个例子中的关键知识点。 1. **AndroidManifest.xml配置**: 在Android应用中,使用Wi...
然而,需要注意的是,`startTethering`在Android 7.1中是一个受保护的API,只能在系统源码层面上调用,这意味着它无法在普通的应用程序中直接使用,除非你是系统应用或者拥有足够的权限。 为了在非系统应用中使用此...
#### 一、Android系统概述与WiFi功能定位 Android系统作为全球最流行的移动操作系统之一,以其开放性和灵活性著称。由Google公司主导开发的Android,不仅吸引了众多手机制造商、科研机构、软件开发商和个人开发者的...