java - Android:打开/读取或复制本地网络中的文件

标签 java android

完全是 Android 新手,来自 C# 世界.. 我已经为 Android 编写了一个小型私有(private)应用程序,并且该应用程序不能在 Play 商店等上提供...... 该应用程序使用 JTDS 直接连接到本地 SQL Server 来管理来自设备的“输入”,并且它按预期工作:)

同样,该应用程序无法通过 Play 商店更新,但现在我想提供一个功能来更新它 [偶尔会:)] 所以我想在本地网络上验证共享一个包含最新可用版本的文本文件,并最终将"new"apk 复制到 android\Download 目录... 但我仍然必须找到一种方法来“读取\连接”局域网的共享...... 我看过其他线程,例如 How to use httpget in my app 基本上我的代码遵循 How to get file via HttpGet from pc in local network on android

但是代码“失败”,状态代码为 404... 在 HttpGet(file) 中,我提供了我需要读取的文件的 LAN 位置,例如 字符串文件=“http://192.168.x.xxx/NetworkShare/file2read.txt”;

共享位于具有只读权限且无需身份验证的 Windows7 计算机上...它不是 Windows 域,它只是一个工作组,因此应排除权限问题... 我仍在检查模拟器而不是物理设备...... list 已包含 Internet 权限、WIFI_STATE、NETWORK_STATE 如果有帮助,我正在使用 Android Studio 1.1.0

有什么提示或替代方案吗?

TIA

asql

最佳答案

您尝试使用 HttpGet 执行的操作不适用于 LAN 位置,因为当您共享目录时,您正在使用 SMB、CIFS 或 NFS 协议(protocol),并且无法通过 HTTP 访问这些文件。如果您想使用 HttpGet,则必须通过 HTTP 服务器发布文件。

我认为在 Android 中无法以编程方式安装驱动器。 busybox 是可以的,但也许你需要 root 权限。

完成您想要的操作的最佳方法是从网络服务获取信息,或者从 ftp 服务器下载文件。

关于java - Android:打开/读取或复制本地网络中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28742343/

相关文章:

java - 为什么这个算法的运行时间是 O(m+n)?

android - PhoneGap 和谷歌地图 API V3 "Disabled?"

android - 使用 AOSP 更改 dts 后如何在没有 make clean 的情况下构建?

java - OpenGL "Invalid operation error"android 手机上的 glDrawElements 函数后

java - 如何使用 swings 在桌面应用程序中将英文字体转换为泰卢固字体

java - this == obj 语法是什么意思?

java - 从 war 文件中读取 list 文件会在 tomcat 7 中产生错误

java - 从 JAR 目录读取属性文件

android - 从 Android 应用程序打开 Chromecast youtube 视频

Android:为 AsyncTask 设置超时