我可以在Android上使用相同的Java库和Java代码吗?

我可以在Android上使用相同的Java库和Java代码吗?,java,android,Java,Android,我有一个java程序,它使用以下库: 通用编解码器1.9 commons loggin 1.2 fluent-hc-4.5.2 httpclient-4.5.2 httpclient-cache-4.5.2 httpclient-win-4.5.2 httpcore-4.4.4 HTTPIME-4.5.2 jna-4.1.0 jna-plattform-4.1.0 我必须创建一个android程序,它的功能与java程序完全相同。 所以我的问题是,是否可以导入与java中相同的库 我认为这些

我有一个java程序,它使用以下库:

  • 通用编解码器1.9
  • commons loggin 1.2
  • fluent-hc-4.5.2
  • httpclient-4.5.2
  • httpclient-cache-4.5.2
  • httpclient-win-4.5.2
  • httpcore-4.4.4
  • HTTPIME-4.5.2
  • jna-4.1.0
  • jna-plattform-4.1.0
我必须创建一个android程序,它的功能与java程序完全相同。 所以我的问题是,是否可以导入与java中相同的库

我认为这些图书馆是重复的。为什么?

  • fluent-hc-4.5.2
  • httpclient-4.5.2
  • httpclient-cache-4.5.2
  • httpclient-win-4.5.2
  • httpcore-4.4.4
  • HTTPIME-4.5.2
这些是否已被默认使用

我尝试了以下内容(我不知道在哪里找到的…):

这包括哪些库

java代码非常简单:

    DataSet ds = new DataSet();
    ds.add("Puls", (new Date()).getTime(), 23.87);
    .... (following)

    DataUploadClient.upload("https://xxx.de/DataUploadServlet",
            "(for you unimportant String)",
            "user", "password", ds.toString());
程序应该将数据上传到服务器并保存到数据库中

我希望你明白我的意思。与java相比,Android应该做哪些改变?只有图书馆?或者我也应该更改代码


这不是我的服务器,也不是我的代码。我的任务是让整个程序在android上运行。

android运行时是精简版java,并非所有(完整的)java框架都受android支持

在桌面上运行的JRE是oracle JRE(java运行时)或open JRE。它使用jvm(java虚拟机)工作

一般Java编程,Java代码被编译成在JVM上运行的字节码,而在android上,编译成字节码的Java代码被转换成在dvm(dalvik虚拟机)上运行的dex代码,dvm在android上运行

Android不支持Java企业代码、Java swing gui工具包等


从android lolipop v5开始,dvm(dalvik虚拟机)被android运行时的art完全取代了

你试过了吗?是的,你完全可以使用它,因为你分解了解决方案并使用异步任务来避免主线程负担过重JNA几乎肯定不会;这是一个围绕JNI的包装,不是吗?只需知道桌面/服务器应用程序并不一定要移植到移动设备上。Http legacy不推荐使用,是的,但我认为它是Http客户机和核心。也许还可以演哑剧
    DataSet ds = new DataSet();
    ds.add("Puls", (new Date()).getTime(), 23.87);
    .... (following)

    DataUploadClient.upload("https://xxx.de/DataUploadServlet",
            "(for you unimportant String)",
            "user", "password", ds.toString());