Подключение Android Studio к (локальному) серверу mySql через JDBC - PullRequest
0 голосов
/ 23 сентября 2018

Я пытаюсь подключить свое Android-приложение к моей локальной базе данных MySQL, а затем получить некоторое содержимое базы данных с помощью JDBC.Поэтому я попробовал этот код для подключения к базе данных:

try{
            Class.forName("com.mysql.jdbc.Driver");
            Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/rpg","root", "whatever");
            Statement statement = connection.createStatement();
            final ResultSet resultSet = statement.executeQuery("select * from player");

            Log.i("Content",resultSet.getString(0));

        }catch (Exception e) {
            e.printStackTrace();
        }

Я дал разрешение на доступ в интернет в манифесте (<uses-permission android:name="android.permission.INTERNET"/>)

и реализовал коннектор mySQL в виде библиотеки (mysql-connector-java)-8.0.12.jar).

Когда я хочу запустить это, я получаю эту ошибку:

Default interface methods are only supported starting with Android N (--min-api 24): void com.mysql.cj.protocol.AuthenticationPlugin.destroy()  
Default interface methods are only supported starting with Android N (--min-api 24): void com.mysql.cj.protocol.MessageSender.send(com.mysql.cj.protocol.Message)   
Default interface methods are only supported starting with Android N (--min-api 24): byte com.mysql.cj.protocol.MessageReader.getMessageSequence()  
Default interface methods are only supported starting with Android N (--min-api 24): com.mysql.cj.result.Row com.mysql.cj.result.RowList.get(int)   
Default interface methods are only supported starting with Android N (--min-api 24): com.mysql.cj.protocol.Message com.mysql.cj.interceptors.QueryInterceptor.postProcess(com.mysql.cj.protocol.Message, com.mysql.cj.protocol.Message) 
null    
com.android.builder.dexing.DexArchiveBuilderException: Failed to process C:\Users\Alexander\Desktop\Programmierung\Testing2\app\libs\mysql-connector-java-8.0.12.jar    
com.android.builder.dexing.DexArchiveBuilderException: Error while dexing.  
com.android.tools.r8.CompilationFailedException: Compilation failed to complete 
com.android.tools.r8.utils.AbortException

Похоже, мне нужно увеличить minSdkVersion до 24, верно?Итак, я сделал это, и затем появляется эта ошибка:

Invoke-customs are only supported starting with Android O (--min-api 26)    
null    
com.android.builder.dexing.DexArchiveBuilderException: Failed to process C:\Users\Alexander\Desktop\Programmierung\Testing2\app\libs\mysql-connector-java-8.0.12.jar
com.android.builder.dexing.DexArchiveBuilderException: Error while dexing.  
com.android.tools.r8.CompilationFailedException: Compilation failed to complete 
com.android.tools.r8.utils.AbortException   

Поэтому я также увеличил ее до 26, затем получаю эту ошибку:

Installation failed with message INSTALL_FAILED_OLDER_SDK: Failed parse during installPackageLI: /data/app/vmdl127069021.tmp/base.apk (at Binary XML file line #7): Requires newer sdk version #26 (current version is #25).
It is possible that this issue is resolved by uninstalling an existing version of the apk if it is present, and then re-installing.

WARNING: Uninstalling will remove the application data!

Do you want to uninstall the existing application?

Но такое чувство, что я нахожусь вв любом случае совершенно неправильно.У кого-то есть идея, как я могу это сделать.

1 Ответ

0 голосов
/ 12 июня 2019
  • открыть build.gradle (модуль: приложение) в окне проекта
  • изменить minSdkVersion на 24 или выше
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...