【问题标题】:import already defined in single type import导入已在单一类型导入中定义
【发布时间】:2019-10-05 22:03:34
【问题描述】:

我需要帮助来弄清楚如何解决我活动中两个冲突导入的问题,即:

  1. retrofit2.Response
  2. com.android.volley.Response

第一个导入旨在帮助我管理 api 回调响应,而第二个导入旨在帮助我在上传文件时管理 stringrequest 响应。单独实现一个,即仅运行 api 调用以获取数据本身就可以正常工作,就像自己上传文件一样。现在将两者合并到一个活动中,这样当用户从下拉列表中选择数据时,其列表来自服务器,然后上传文件被证明是非常麻烦的错误:

retrofit2.Response 已在单一类型导入中定义

com.android.volley.Response 已在单一类型导入中定义

取决于哪个先来。

【问题讨论】:

    标签: android import response


    【解决方案1】:

    您不能导入两个具有相同名称的不同类。在这些情况下,您可以导入一个,但使用具有完全限定名称的另一个。

    例如:

    import retrofit2.Response;
    
    
    Response response = ...; //This is Retrofit Response object
    com.android.volley.Response otherResponse = ...; //This is volley Response object
    

    【讨论】:

      【解决方案2】:

      如果您需要使用两个或多个具有相同名称的类,您可以选择其中一个。

      选项 1:将一种类型用于导入,并使用另一种的完全限定类名。

      import java.util.Date;
      
      public class SameNameConflicts {
          Date date;
          java.sql.Date sqlDate;
      }
      

      选项 2:对两者都使用完全限定的类名。

      public class SameNameConflicts {
          java.util.Date date;
          java.sql.Date sqlDate;
      }
      

      【讨论】:

        【解决方案3】:

        如果我是你,我会创建使用改造来上传图片 查看 How to Upload Image file in Retrofit 2ANDROID UPLOAD IMAGE TO SERVER USING RETROFIT 2

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2019-05-03
          • 2019-04-30
          • 1970-01-01
          • 2017-09-10
          • 2021-12-05
          • 2016-09-19
          • 1970-01-01
          相关资源
          最近更新 更多