title: Javafxports and SQLite on Android Device
body: <p>i will write a sample code with sqlite, that must work both ANdroid and IOS (and Desktop)</p>
  
  <p>Here is my <strong>build.gradle</strong> </p>
  
  <pre><code>  buildscript {
      repositories {
          jcenter()
          mavenCentral()
          maven { url 'https://oss.sonatype.org/content/repositories/snapshots' }
      }
      dependencies { classpath 'org.javafxports:jfxmobile-plugin:1.0.6' }
  }
  apply plugin: 'org.javafxports.jfxmobile'
  repositories {
      jcenter()
      mavenCentral()
      maven { url 'https://oss.sonatype.org/content/repositories/snapshots' }
      maven { url 'https://oss.sonatype.org/content/repositories/releases' }
  }
  ext.CHARM_DOWN_VERSION = "1.0.0"
  dependencies {
      compile 'mysql:mysql-connector-java:3.1.12'
  
      //compile 'org.xerial:sqlite-jdbc:3.9.0-SNAPSHOT'
  
      compile 'org.sqldroid:sqldroid:1.0.3'
      compile "com.gluonhq:charm-down-common:$CHARM_DOWN_VERSION"
      desktopRuntime "com.gluonhq:charm-down-desktop:$CHARM_DOWN_VERSION"
  
      //desktopRuntime 'org.xerial:sqlite-jdbc:3.9.0-SNAPSHOT'
  
      androidRuntime "com.gluonhq:charm-down-android:$CHARM_DOWN_VERSION"
      androidRuntime 'org.sqldroid:sqldroid:1.0.3'
  
      iosRuntime "com.gluonhq:charm-down-ios:$CHARM_DOWN_VERSION"
  }
  mainClassName = 'com.version17.Version17'
  jfxmobile {
      android {
          manifest = 'src/android/AndroidManifest.xml'
          packagingOptions {
              exclude 'META-INF/INDEX.LIST'
          }
      }
      ios {
          infoPList = file('src/ios/Default-Info.plist')
          forceLinkClasses = ['com.version17.**.*', 'com.mysql.**.*', 'SQLite.**.*', 'com.gluonhq.**.*']
      }
  }
  </code></pre>
  
  <p><strong>sqliteHelper.java</strong></p>
  
  <pre><code>public static void testSqli() throws SQLException, ClassNotFoundException{
      Class.forName("SQLite.JDBCDriver");
  
      String dbName = "mtt8.db";
      File dir = null;
      try {
          dir = PlatformFactory.getPlatform().getPrivateStorage();
      } catch (IOException e) {
          e.printStackTrace();
      }
  
      File db = new File (dir, dbName);
      String dbUrl = "jdbc:sqlite:" + db.getAbsolutePath();
  
  
  
  
      Connection conn = DriverManager.getConnection(dbUrl);
  
      //create table
      Statement st=null;
  
          st = conn.createStatement();
          st.executeUpdate("DROP TABLE IF EXISTS village;");
      st.executeUpdate("CREATE table village (id int, name varchar(20))");
          //insert row
      for (int i=0; i&lt;50; i++){
          st.executeUpdate("INSERT INTO village VALUES (" +i+ ", 'Erkan Kaplan')");
      }
  
  
      //select
      String query = "SELECT id, name from village";
      ResultSet rs = null;
  
              rs = st.executeQuery(query);
  
              while(rs.next()) {
                  int id = 0;
                  id = rs.getInt(1);
  
                  String name = null;
  
                      name = rs.getString(2);
  
                  System.out.println("id:"+ id+ ", name: "+ name);
              st.executeUpdate("DELETE from village");
              rs.close();
  
      }
  
  }
  </code></pre>
  
  <p>This work on Ipad Devices and Desktop but not on Android-Devices (like Samsung Tablet).</p>
  
  <p>Can anybody please say me why this code above dont work on Samsung Tablets? or which depends i must add in my code? </p>
  
  <p>thanks
  Erkan Kaplan</p>