Android Studio 报错记录

                                                    报错记录

 

 

报错一:可能因文件夹嵌套过深出现的异常

Android resource linking failed
Output:  W/ziparchive( 5692): Unable to open '项目路径(例 D:/xxx)\app\build\intermediates\processed_res\打包名称\打包资源名称\out\resources-资源名称.ap_': No such file or directory
error: failed to open APK: I/O error.

Command: C:\Users\Exception\.gradle\caches\transforms-1\files-1.1\aapt2-3.2.1-4818971-windows.jar\f3b4b326ea9f1e1e4aa1196b35f260cc\aapt2-3.2.1-4818971-windows\aapt2.exe link -I\
        D:\Software\Android\Sdk\platforms\android-26\android.jar\
        -I\

       。。。。。
        。。。。。
        。。。。。
        
Daemon:  AAPT2 aapt2-3.2.1-4818971-windows Daemon #0

解决方式 :1

allprojects {
    repositories {
        google()
        jcenter()
    }
    buildDir = "D:/tmp/${project.name}" //添加运行时转存文件目录(不在使用默认的)
}

解决方式 :2  

将项目所在文件夹或者项目文件夹调整简短

 

 

报错二:layout文件或者id文件重名导致的异常

java.lang.NoSuchFieldError: 
No static field txt_content of type I in class Lcom/test/ ...

解决方式 :1    

         修改命名

 

报错三:Retrofit post 传输 String 多了双引号问题 导致酵母数据解析不出来

后端代码

    @PostMapping("/login")
    public ResultBean doLogin(@RequestBody String registerEncryptData) {
        System.out.println(registerEncryptData);
        String decrypt = AesUtil.decrypt(registerEncryptData);
        LoginRequestBean requestBean = JSON.toJavaObject(JSONObject.parseObject(decrypt), LoginRequestBean.class);
        return loginService.doLogin(requestBean);
    }

请求代码

 RetrofitServiceManager.getInstance().create(ApiService.class).goLogin(s).compose(RxJavaHelper.observeOnMainThread()).subscribe(new DefaultObserver<String>() {
            @Override
            public void onSuccess(String response) {
                Toast.makeText(context, response, Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onFinish() {
                super.onFinish();
            }
        });

请求的数据是   :   VO18XUgxLIxfjMSWa/WnQI/ZM04mjES/I2kzlq3aWjidRvpErzsCjZQRZPUerAhY7KwjIIhUqc=

后端收到的是   :  "VO18XUgxLIxfjMSWa/WnQI/ZM04mjES/I2kzlq3aWjidRvpErzsCjZQRZPUerAhY7KwjIIhUqc="

解决方式 :原因是你注册了 GsonConverter,没注册标准类型数据的转换器,或者标准类型数据的转换器不是第一个,就会导致String这些都会转成 JSON 传输,你只需要加一个标准类型的转换器就行了。

        retrofit = new Retrofit.Builder()
                .client(okHttpClient)//设置使用okhttp网络请求
                .baseUrl(REQUEST_PATH)//设置服务器路径
                .addConverterFactory(ScalarsConverterFactory.create())//获取返回的字符串
                .addConverterFactory(FastJsonConverterFactory.create())//FastJson转化库
                .addConverterFactory(GsonConverterFactory.create())//默认Gson转化库
                .addCallAdapterFactory(RxJava2CallAdapterFactory.create())//添加回调库,采用RxJava
                .build();

将 ScalarsConverterFactory   提前

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值