zoukankan      html  css  js  c++  java
  • Android 导入android源码有错,R.java文件不能自动生成解决方法

    最近几天学习android ,学习时候难免要导入一些示例,目的为了更加了解android各种API用法,顺便也可以学习下别人代码的写法。可是导入android源码后,基本都有错误,R.java也不会自动生成,因为是第一次导入工程,工程有错R.java就不会自动生成了,工程有错误,当然模拟器就不能启动,也就看不到效果。随后网上找各种解决方法,网上解决方法主要有这几种
     
    1、选择菜单  Project >> Clean ,前提是勾选上 Bulid Automatically(自动构建部署) , 点Clean后会重新构建项目,因为一般情况下,R.java文件在这个时候会重新更新生成一边,如果工程有错,就不会自动生成。
    2、选择工程,右键 Android Tools >> Fix Project Properties 这个操作有时候可以修正一些错误,但我的不行。
    3、还有的说法是重新建一个空的工程,然后把这里面的代码,资源文件按照对应的包路径什么的拷进去,然后重新生成一边,这种方法,也想当于是第一种方法,都是重新构建部暑,性质一样的。

       以上几种方法都试了,R.java依旧没出现,整个工程还是一大堆错误。随便点了一个有错误的布局XML文件,看到这样一个错误代码android:layout_height="match_parent" , 之前我都用1.5/1.6/2.1 版本的SDK layout_height里面没有看到match_parent这个属性,然后问群一个兄弟说这个属性是2.X版本的,想了下,是不是因为工程的SDK版本和eclipse默认的SDK版本问题呢,于是选择工程,右键 Properties >> Android 然后看到右边的一块 Target Name, 我的是选中 Android 1.5,然后换了一个 2.1 的 ,点击Appply ,工程自动构建,看到错误少了一些,换到2.2,重新构建,错误没了,久未解决的问题解决了,R.java也出来了,一个字高兴啊,启动模拟器一切正常。

      总结下当导入其它源码时候,首先要保证源码的SDK版本和你eclipse默认版本是否一致。
    查看源码版本办法:打开default.properties 文件,看target=android-7 这后面这个数是多少。
    版本对应关系:target=android-3 <---> android 1.5  ,target=android-4 <---> android 1.6 ,
    target=android-7 <---> android 2.1  ,target=android-8 <---> android 2.2 其它的自己测试下。

    最近一次导出别人的程序还是有点问题,我个人认为最好的办法还是,把对应的程序拷贝到新建的工程中。

  • 相关阅读:
    sass和less的对比
    vue 源码分析
    vue的全家桶
    Vue组件化和路由
    开发技术文档汇总
    NodeJs前端构建工具 ——————之Grunt篇
    grunt使用小记之uglify:最全的uglify使用DEMO
    20 种提升网页速度的技巧
    webfont应用系列(二)如何制作图标字体?
    快速上手制作Icon Font
  • 原文地址:https://www.cnblogs.com/zhangzhifeng/p/2317428.html
Copyright © 2011-2022 走看看