San*_*ent 4 mysql android jdbc android-studio
我目前正在尝试建立从我的 Android 应用程序到在我的 raspberry pi 上运行的 MySQL 服务器的连接。
我通过将库添加到模块菜单中的依赖项来正确地将库添加到 android studio。
我在我的程序中实现了这样的 JDBC 方法。
public void readDatabase(String query)throws Exception{
try {
Class.forName("com.mysql.cj.jdbc.Driver");
connection = DriverManager.getConnection("jdbc:mysql://192.168.0.101/mydb","user","mypassword");
statement = connection.createStatement();
resultSet = statement.executeQuery(query);
System.out.println(resultSet);
}catch (ClassNotFoundException e){
e.printStackTrace();
}finally {
close();
}
}
private void close(){
try {
if (resultSet != null){
resultSet.close();
}
if (statement != null){
statement.close();
}
if ( connection != null){
connection.close();
}
}catch (Exception e){
}
}
Run Code Online (Sandbox Code Playgroud)
每次我启动程序时,我都会收到一个找不到类的错误。它说 :
W/System: ClassLoader 引用了未知路径: system/framework/mediatek-cta.jar I/System.out: e:java.lang.ClassNotFoundException: com.mediatek.cta.CtaHttp
我试图以不同的方式搜索问题,但我无法弄清楚问题出在哪里。
我什至不知道 cta 课是什么。也许有人可以在这里帮助我。
CTA = China Type Approval,这是联发科在 Android 中添加的用于测试目的的东西。
您的错误发生在DriverManager.getConnection() 中,它可能使用Android 的libcore 中的okhttp、apache-http或Socket类来执行其请求。
Mediatek 修补了这些库以添加对 HTTP 请求的控制。它尝试动态加载/system/framework/mediatek-cta.jar 中定义的一些方法,但它可能不存在或在您的 android 设备的文件系统上无法访问。
我看到 5 个解决方案:
| 归档时间: |
|
| 查看次数: |
7119 次 |
| 最近记录: |