【问题标题】:Android: Best way to backup data to the internet?Android:将数据备份到互联网的最佳方式?
【发布时间】:2011-07-12 15:58:10
【问题描述】:

将数据备份到外部位置(即 Web 服务器)的最佳方式是什么?我查看了 sql 和电子邮件和文件上传,但这些似乎都不能使用 android sdk 工作? (我可能是错的)我试图将短信最好备份到互联网上某处的数据库中,任何人都可以提出这样做​​的方法吗?据我所知,Android 上无法访问 JDBC?

提前致谢。

这是我在添加 JDBC 时遇到的错误:

        UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dx.util.ExceptionWithContext
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.util.ExceptionWithContext.withContext(ExceptionWithContext.java:46)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.dex.cf.CfTranslator.processMethods(CfTranslator.java:340)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.dex.cf.CfTranslator.translate0(CfTranslator.java:131)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.dex.cf.CfTranslator.translate(CfTranslator.java:85)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main.processClass(Main.java:369)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main.processFileBytes(Main.java:346)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main.access$400(Main.java:59)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:294)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:244)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:130)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:190)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:122)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:108)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main.processOne(Main.java:313)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main.processAllFiles(Main.java:233)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main.run(Main.java:185)
[2011-07-12 17:17:46 - SMS] Dx  at sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source)
[2011-07-12 17:17:46 - SMS] Dx  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[2011-07-12 17:17:46 - SMS] Dx  at java.lang.reflect.Method.invoke(Unknown Source)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.ide.eclipse.adt.internal.build.DexWrapper.run(DexWrapper.java:179)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.ide.eclipse.adt.internal.build.BuildHelper.executeDx(BuildHelper.java:585)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.ide.eclipse.adt.internal.build.builders.PostCompilerBuilder.build(PostCompilerBuilder.java:490)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:256)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:394)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.resources.Project$1.run(Project.java:618)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:597)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.resources.Project.build(Project.java:114)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.ide.eclipse.adt.internal.launch.LaunchConfigDelegate.launch(LaunchConfigDelegate.java:145)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:854)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:703)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:928)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1132)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
[2011-07-12 17:17:46 - SMS] Dx Caused by: java.lang.NullPointerException
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.code.Ropper$SubroutineInliner.involvedInSubroutine(Ropper.java:1518)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.code.Ropper$SubroutineInliner.mapOrAllocateLabel(Ropper.java:1539)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.code.Ropper$SubroutineInliner.copyBlock(Ropper.java:1457)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.code.Ropper$SubroutineInliner.inlineSubroutineCalledFrom(Ropper.java:1412)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.code.Ropper.inlineSubroutines(Ropper.java:1286)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.code.Ropper.doit(Ropper.java:652)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.code.Ropper.convert(Ropper.java:252)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.dex.cf.CfTranslator.processMethods(CfTranslator.java:252)
[2011-07-12 17:17:46 - SMS] Dx  ... 39 more
...while processing reuseAndReadPacket (Lcom/mysql/jdbc/Buffer;I)Lcom/mysql/jdbc/Buffer;
...while processing com/mysql/jdbc/MysqlIO.class

[2011-07-12 17:17:46 - SMS] Dx 
UNEXPECTED TOP-LEVEL EXCEPTION:
java.lang.IllegalArgumentException: already added: Lcom/mysql/jdbc/AssertionFailedException;
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:123)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.dex.file.DexFile.add(DexFile.java:143)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main.processClass(Main.java:372)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main.processFileBytes(Main.java:346)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main.access$400(Main.java:59)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:294)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:244)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:130)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:108)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main.processOne(Main.java:313)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main.processAllFiles(Main.java:233)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.dx.command.dexer.Main.run(Main.java:185)
[2011-07-12 17:17:46 - SMS] Dx  at sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source)
[2011-07-12 17:17:46 - SMS] Dx  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[2011-07-12 17:17:46 - SMS] Dx  at java.lang.reflect.Method.invoke(Unknown Source)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.ide.eclipse.adt.internal.build.DexWrapper.run(DexWrapper.java:179)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.ide.eclipse.adt.internal.build.BuildHelper.executeDx(BuildHelper.java:585)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.ide.eclipse.adt.internal.build.builders.PostCompilerBuilder.build(PostCompilerBuilder.java:490)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:256)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:394)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.resources.Project$1.run(Project.java:618)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:597)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.resources.Project.build(Project.java:114)
[2011-07-12 17:17:46 - SMS] Dx  at com.android.ide.eclipse.adt.internal.launch.LaunchConfigDelegate.launch(LaunchConfigDelegate.java:145)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:854)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:703)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:928)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1132)
[2011-07-12 17:17:46 - SMS] Dx  at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
[2011-07-12 17:17:46 - SMS] Dx 2 errors; aborting
[2011-07-12 17:17:46 - SMS] Conversion to Dalvik format failed with error 1

【问题讨论】:

    标签: java android database jdbc


    【解决方案1】:

    看看SMS-backup-plus,它可能就是你想要的。

    【讨论】:

    • 除了上传方法之外,我的所有方法都已准备就绪,我真的不想使用 k9 电子邮件作为电子邮件发送工具。我只是想知道如何连接到 sql 数据库并将项目添加到表中或能够将文件上传到服务器。
    【解决方案2】:

    您可以查看适用于 Android 的 Backup Manager。这不一定会按需工作,但会让用户保留他/她的数据以备不时之需。

    如果你有一个 SQL 数据库,你可以通过任何你需要的方法发送文件(例如上传到你自己的服务器)。

    【讨论】:

      【解决方案3】:

      我不明白您为什么不能使用 JDBC。您是否检查了所有权限以确保您的应用可以使用互联网或您可能需要的任何其他内容?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-03-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多