Android MySQL 异常错误
Posted
技术标签:
【中文标题】Android MySQL 异常错误【英文标题】:Android MySQL Exception Error 【发布时间】:2012-07-15 21:29:19 【问题描述】:我正在尝试对 android 应用程序中的数据库执行简单查询。但是每次执行该方法时程序都会崩溃。有人对如何解决这个问题有任何建议吗?
这是错误日志消息:
07-15 17:20:23.623:错误/AndroidRuntime(544):未捕获的处理程序: 由于未捕获的异常07-15 17:20:23.643,线程主退出: 错误/AndroidRuntime(544):java.lang.VerifyError: com.mysql.jdbc.MysqlIO 07-15 17:20:23.643: 错误/AndroidRuntime(544): 在 com.mysql.jdbc.Connection.createNewIO(Connection.java:2771) 07-15 17:20:23.643:错误/AndroidRuntime(544):在 com.mysql.jdbc.Connection.(Connection.java:1555) 07-15 17:20:23.643:错误/AndroidRuntime(544):在 com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285) 07-15 17:20:23.643: 错误/AndroidRuntime(544): 在 java.sql.DriverManager.getConnection(DriverManager.java:191) 07-15 17:20:23.643:错误/AndroidRuntime(544):在 java.sql.DriverManager.getConnection(DriverManager.java:226)
这是我的连接:
String url = "jdbc:mysql://192.126.0.1:3306/";
String db = "db";
String driver = "com.mysql.jdbc.Driver";
String table = "table";
Connection conn = null;
try
Class.forName(driver);
try
conn = DriverManager.getConnection(url+db,"root","");
conn.close();
catch (SQLException s)
s.printStackTrace();
catch (ClassNotFoundException cnfe)
System.out.println("ERROR");
【问题讨论】:
【参考方案1】:您在编译时环境中有不同版本的 JDBC 驱动程序,在运行时环境中有不同版本。扫描您的磁盘和设备以查找mysql-connector*.jar
,并确保您周围只有一个。
【讨论】:
我正在使用模拟器。如何扫描运行时环境? @scriptdiddy - 使用busybox find -name 'mysql*jar'
命令。或另见答案here。【参考方案2】:
我也在开发一个带有在线 mysql 数据库的 android 应用程序。我认为您不能像在 java 应用程序中那样直接连接它。您应该编写 php 文件并将它们放在服务器上。他们将连接到数据库并向您发送 JSON 格式的数据...
【讨论】:
以上是关于Android MySQL 异常错误的主要内容,如果未能解决你的问题,请参考以下文章
异常:android.app.RemoteServiceException 从包发布的错误通知