gpt4 book ai didi

android:以编程方式通过USB将sqlite数据库从PC传输到设备

转载 作者:行者123 更新时间:2023-11-29 18:23:41 24 4
gpt4 key购买 nike

情况是这样的。我有一个用 vb.net 编写的应用程序。它由两部分组成。一个在 PC 上,另一个在手持式 Windows Mobile 6 设备上。桌面程序使用 activesync 通过 USB 将 SQLServer compact 数据库传输到手持设备或从手持设备传输。我们可能希望研究让此应用程序也支持 android 手持设备。现在我知道我可以将 SQLite 与 .net 一起使用。我知道我可以使用 ADB 向设备推送和拉取数据(以及数据库文件)。

我需要知道的是,我能否以 API 或 SDK 的形式直接从 VB.NET 访问 ADB 而不必手动访问。

当然,除非我遗漏了一些东西并且我可以通过其他方式将数据库复制到设备或从设备复制数据库?

感谢期待

最佳答案

没有直接的 API。我们有一个类似的场景,用户从桌面客户端(在我们的例子中是基于 Java Swing 的)同步内容(即数据库),该客户端手动使用 adb,目前运行良好。

在我们的 java 客户端中,我们会调用:

private static final String ADB_PUSH = "\"" + Utility.getWorkDir() + File.separator + "adb\" -s %s push \"%s\" %s";


/**
* Pushes a file to a connected device via ADB
* @param deviceId Device serial number
* @param from Path of source file (on PC)
* @param to Path of file destination (on device)
*/
public static void push(String deviceId, String from, String to) {
try {
String cmd = String.format(ADB_PUSH, deviceId, from, to);
System.out.println("adb push: " + cmd);
Process p = Runtime.getRuntime().exec(cmd);
InputStream is = p.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);

String line;
while ((line = br.readLine()) != null) {
System.out.println("adb: " + line);
}
} catch (IOException e) {
System.out.println(e);
}
}

关于android:以编程方式通过USB将sqlite数据库从PC传输到设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3799536/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com