Android 编程 - Bug记录 (持续更新中)

1、org.json.JSONException: End of input at character 0 of

  • 翻译:org.json.JSON异常:在字符0处输入结束
  • 原因:
    -如果返回值为空,JSONArray无法把它转换成JSONArray则会报End of input at character 0
    of异常
    -如果返回值不符合json标准,也会报异常
  • 解决办法:查看返回的json数组是否规范、是否为空

 
2、android-java.net.ConnectException: failed to connect to localhost/127.0.0.1 (port 8080)

  • 翻译:安卓-java.net.ConnectException异常:无法连接到本地主机/127.0.0.1(端口8080)

  • 原因:
    -可能是ip地址写错,ip地址写成了localhost,安卓模拟器默认把127.0.0.1和localhost当做本身了
    -也可能没有安装完整的模拟器(表现为启动模拟器activity页面报错,无法正常启动)

  • 解决办法:
    -在模拟器上可以用10.0.2.2代替127.0.0.1和localhost
    -用本机ip地址代替localhost,步骤:win+R --> 输入cmd --> 回车 -->输入ipconfig -->回车 --> 查看ip地址
    -没有安装完整的模拟器的话换个模拟器或重装

 
3、Class"X" is public, should be declared in a file named "X.java"

  • 翻译:类“X”是公共的,应该在名为“X.java”的文件中声明

  • 原因:
    -类名和文件名不一致

  • 解决办法:把文件的名字改成和类名相同

 
4、Binary XML file line #2: Error inflating class

  • 翻译:二进制XML文件行#2:膨胀类时出错

  • 原因:
    -drawable那里引用资源出错,给图片命名时候忘记删除v24

  • 解决办法:找不到资源文件,这次错误就是drawable里面的手误弄成了v24,但不是v24,将有v24重命名为没v24就行了

 
5、Session app: Installation did not succeed.The application could not be installed: INSTALL FAILED I

  • 翻译:会话应用:安装没有成功。成功无法安装应用程序:安装失败

  • 原因:
    -内存不够安装应用程序

  • 解决办法:
    方法一:菜单栏的Build–>Clean Project清理一下项目缓存
    方法二:wide data清理一下模拟器数据
    在这里插入图片描述
    在这里插入图片描述

方法三:清理一下电脑C盘,可能满了

 
6、Your content must have a ListView whose id attribute is android.R.id.list"

  • 翻译:你的内容必须有一个id属性为android.R的ListView。id.列表

  • 原因:
    -因为要实现对ListView中setOnItemClick的事件监听而去继承了LiseActivity,但没有ListView的标签

  • 解决办法:
    在主Activity布局文件中加个ListView,且ID为list

代码:

 <ListView 
        android:id="@id/android:list" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"> 
</ListView>

有点奇怪的是android:list这个位置的代码是红色的,但是能运行了,不报错了

 
7、No cached version of com.android.tools.build:gradle:2.0.0 available for offline mode.

  • 翻译:没有缓存版本安卓工具.建造:gradle:2.0.0可用于脱机模式。

  • 原因:
    -离线模式下找不到缓冲版本2.0.0。
    -手误勾选了gradle配置的offline work

  • 解决办法:
    -只要在配置中将gradle配置的offline work前面的√取消就可以了。
    -位置:File-Setting-Build,Excution,Employment-gradle.

 
8、java.sql.SQLException: Before start of result set

  • 翻译:java.sql.SQLException异常:在结果集开始之前

  • 原因:
    -rs相当于指针。没指针根本没指向对应记录无法查询,rs必须用next一个个遍历

  • 解决办法:

ResultSet rs=null;
rs=........
//要在这里加入while(rs.next())
while(rs.next()){
.............    
  }

 
9、原因:java.lang.非法访问异常

  • 翻译:java.sql.SQLException异常:在结果集开始之前

  • 原因:
    -无法访问私有化的构造方法,普通方法,和私有属性。

  • 解决办法:
    -将修饰类属性的 private 改为 public

 
10、原因:java.lang.非法访问异常

  • 翻译:java.sql.SQLException异常:在结果集开始之前

  • 原因:
    -无法访问私有化的构造方法,普通方法,和私有属性。

  • 解决办法:
    -将修饰类属性的 private 改为 public

猜你喜欢

转载自blog.csdn.net/weixin_44505462/article/details/106962003