如何使用adb命令在没有SD卡的设备上推送文件

如何将文件从计算机推送到没有SD卡的Android设备。 我试过了:

C:\anand>adb push anand.jpg /data/local 3399 KB/s (111387 bytes in 0.032s) C:\anand>adb push anand.jpg /data/opt 3199 KB/s (111387 bytes in 0.034s) C:\anand>adb push anand.jpg /data/tmp 3884 KB/s (111387 bytes in 0.028s) 

上面的命令移动一个文件anand.jpg到设备,但我没有得到这个设备中的jpg文件。 我没有得到任何成功的结果在cmd提示符,我只得到:

 3399 KB/s (111387 bytes in 0.032s). 

从Ubuntuterminal,下面为我工作。

 ./adb push '/home/webonise/Downloads/one.jpg' '/data/local/' 

我使用这个命令:

语法: adb push filename.extnsion /sdcard/0/

例如: adb push UPDATE-SuperSU-v2.01.zip /sdcard/0/

按着这些次序 :

请转至Android Sdk,然后转至terminal或控制台上的“平台工具”path:

要检查设备上安装的SD卡(外部和内部),请激活以下命令:

  • 1) ./adb shell (回车/回车)
  • 2) cd – (回车/回车)

现在你会看到你的Android设备的目录和文件的列表,你可能会发现/ SD卡以及/存储

  • 3) cd / storage (回车/回车)
  • 4) ls (打回/input)

您可能会看到sdcard0(通常sdcard0是内部存储)和sdcard1(如果存在外部SDCard)

  • 5) 退出 (回车/回车)

来自adb shell

  • 6) ./adb push'/Users/SML/Documents/filename.zip'/ storage / sdcard0 / path_to_store / (回车/回车)

复制文件

有时候你需要扩展,

adb push file.zip /sdcard/file.zip

首先在命令下运行

 adb root adb remount 

然后执行你之前input的内容

 C:\anand>adb push anand.jpg /data/local C:\anand>adb push anand.jpg /data/opt C:\anand>adb push anand.jpg /data/tmp 

我有一个Nexus 4,这是没有外部存储。 然而,Android认为有一个,因为它挂载了一个名为“存储”分离的分区,安装在“/存储/模拟/遗产”,所以尝试推在那里: adb push anand.jpg /storage/emulated/legacy

我的解决scheme(例如一个随机的MP4video文件):

  1. 设置文件到设备:

     adb push /home/myuser/myVideoFile.mp4 /storage/emulated/legacy/ 
  2. 从设备获取文件:

     adb pull /storage/emulated/legacy/myVideoFile.mp4 

为了检索代码中的path:

 String myFilePath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/myVideoFile.mp4"; 

这就是全部。 此解决scheme不会给权限问题,它工作正常。

最后一点:我想更改video元数据信息。 如果你想写入你的设备,你应该改变AndroidManifest.xml的权限。 添加这一行:

 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

您正在尝试写入系统文件夹。 借助ADB,您拥有root(pipe理员)访问权限,因此您可以看到其中一个sdcard的系统文件夹,以便发送您可以使用的图片

D:\ Program Files \ Android \ sdk \ platform-tools \ adb push am files \ android sdk \ adb.exe push C:\ Downloads \ anand.jpg / sdcard / pictures /

注意:C:\ Downloads \ anand.jpgreplace为path和名称以图片..

某些版本的android不会启动适当的任务来更新文件系统的状态。 你可以触发一个明确的意图来更新文件系统的状态。 (我刚刚在同一个OP的情况下testing)

 adb shell am broadcast -a android.intent.action.MEDIA_MOUNTED -d file:/// 

(你可以通过一个特定的file:///path而不是file:///就像file:///sdcard

在我的情况下,我有一个已经删除的SD卡仍然在Android注册。 所以我在下面的时候为我的旧SDCard记下了这个入口:

Settings | Storage & USB

并select“忘记”。

之后是正常的

adb push myfile.zip /sdcard/

工作得很好。