android 的一些编译问题

问题一、

D:\AndroidStudioData\AndroidStudioProjects\XXX\app\build\generated\data_binding_base_class_source_out\debug\out\com\XXX\databinding\YYYBinding.java:4: ����: �����android.support.constraint������
import android.support.constraint.ConstraintLayout;
                                 ^

看错误发现,跟自己的代码有关,但是有不是自己写的。我把自己的YYY.java删除,结果还是一样,我把YYYBinding.java删除,又自动产生YYYBinding.java由YYY.java自动产生,因为某种原因,删了源文件,还是一样产生。应该是。我想到应该是YYY.java用的方法太旧了。我现在bind的方法,YYY.java是从别的地方拷贝过来的,还是用就方法,所以出错。现在问题是怎么不会出错。我搞来搞去,我突然灵光一闪,我删除了YYY.java,但是没有删除它对应的xml文件。我马上删除,果然问题没有了。

问题二、

import com.android.volley.Request;
import com.android.volley.RequestQueue;

代码里面有:

private RequestQueue queue;

我没有找到volley的jar包,这里有显示没有这个类,怎么办?

解决办法:

(1)双击:build.gradle(Module:XXX.app)

(2)添加下面内容

dependencies {
    //...
    implementation 'com.android.volley:volley:1.1.1'
}

(3)对着

private RequestQueue queue;按住Alt + Enter

按提示选择。

问题三、

怎么在自己定义的类里面的函数使用runOnUiThread?看下面的例子:


private void refreshView(Context context){  //外部的Fragment调用

getActivity()获取context,不能用getActivity().getApplicationContext(),否则会崩溃。

    //...
                        ((Activity) context).runOnUiThread(new Runnable() {  //这里使用((Activity) context)调用函数。
    //...
                        }
    //...
}

问题四、

public class a1{

    public class b1{

       int c1;

    }

public class b2{

       int c2;

    }

}

怎样创建内部类c1的对象?

a1.b1  aa = new a1(). new b1();

问题四

 android.support.multidex.MultiDexApplication cannot be cast to

解决:

<application
    //...
    android:name="com.xxx.xxx">
    //...
 </application>

问题五:

$ adb shell am start -n "com.fragmentdemo4/com.tradingstrategy.AMainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Error while executing: am start -n "com.fragmentdemo4/com.tradingstrategy.AMainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.fragmentdemo4/com.tradingstrategy.AMainActivity }
Error type 3
Error: Activity class {com.fragmentdemo4/com.tradingstrategy.AMainActivity} does not exist.

Error while Launching activity

解决:

(1)android studio -->Tools --> SDK Manager -->打开Settings for New Projects

看到:Android SDK Location:D\Users\Administrator\AppData\Local\Android\Sdk

(2)打开cmd.exe-->切换到:D\Users\Administrator\AppData\Local\Android\Sdk\platform-tools

输入:adb uninstall com.test.BTClient

(3)事情永远不会那么顺利的,操作完第2步后,问题还是一样。

我按照网上说的,核对了:AndroidManifest.xml的package和build.gradle的applicationID。我确定这两个都一样。

后面没办法,我的绝招又来了。我随便点右上角的按钮,点了像七星瓢虫的按钮后,问题就消失了。就这么神奇地解决了。

问题五:

(1)Logcat日志窗口可以看到com.xxx,怎么修改这个?它跟app默认的目录有关

点击build.gradle(Module:xxx.app)-->修改defaultConfig的applicationID

(2)安装后app的名字怎么改?

点击AndroidManifest.xml-->修改android:label

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值