Duvida Android usando JDBC MySQLConnector?

Salve galera

Seguinte, estou procurando como fazer para conectar com meu banco de dados MySQL sem precisar usar WebServices, encontrei algumas referencias mas nada ainda que tenha resolvido meu problema. Aqui um how to q estou seguindo: http://www.portalandroid.org/comunidade/viewtopic.php?f=7&t=14571
Ja adicionei o mysqlconnector as bibliotecas e msm assim nao funciona.

Obs: Ja adianto que os motivos de nao usar WebService é pq só vai funcionar localmente, pela wireless.

Estou tentando assim

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="br.com.iguanasistemas.iguanabar.bd"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-sdk android:minSdkVersion="10" />

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:name="br.com.iguanasistemas.iguanabar.principal.IguanaBarAndroidActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>



public class Conexao {
	private static Connection con;
	
	public static Connection getConnection() {	
		try{
			Class.forName("com.mysql.jdbc.Driver");
			con = DriverManager.getConnection("jdbc:mysql://localhost:3306/banco,user,pass");
		}catch(ClassNotFoundException ex){
			Toast.makeText(null, ex.getLocalizedMessage(), Toast.LENGTH_SHORT);
		}catch(SQLException ex){
			Toast.makeText(null, ex.getLocalizedMessage(), Toast.LENGTH_SHORT);
		}
		return con;	
	}
}



public class IguanaBarAndroidActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Connection con = Conexao.getConnection();
    }
}

Como conectar ao MySQL sem precisar de WebService, usando apenas JDBC diretamente ?

obrigado

Até onde eu sei teria como, sim. O problema é que, mesmo o Android oferecendo suporte ao JDBC, o driver utilizado precisa ser funcionar na runtime do Android (lembrando que isso é devido à API do Android não ser a mesma do Java).

Como fica complicado garantir que tudo funcione 100%, o pessoal acaba usando um backend pra isso.

[quote=Ataxexe]Até onde eu sei teria como, sim. O problema é que, mesmo o Android oferecendo suporte ao JDBC, o driver utilizado precisa ser funcionar na runtime do Android (lembrando que isso é devido à API do Android não ser a mesma do Java).

Como fica complicado garantir que tudo funcione 100%, o pessoal acaba usando um backend pra isso.[/quote]

Entaum kra, o duro é criar um webservice só pra isso pois a aplicação so roda localmente e Android vai se conectar por wireless com o banco principal…affs ! Tenso.

[quote=fernandopaiva][quote=Ataxexe]Até onde eu sei teria como, sim. O problema é que, mesmo o Android oferecendo suporte ao JDBC, o driver utilizado precisa ser funcionar na runtime do Android (lembrando que isso é devido à API do Android não ser a mesma do Java).

Como fica complicado garantir que tudo funcione 100%, o pessoal acaba usando um backend pra isso.[/quote]

Entaum kra, o duro é criar um webservice só pra isso pois a aplicação so roda localmente e Android vai se conectar por wireless com o banco principal…affs ! Tenso.[/quote]

Teria algum problema em usar o sqlite no próprio aparelho? Porque se você precisar compartilhar o banco com mais de um dispositivo você vai precisar mesmo criar uma ponte entre o celular e o banco.

Meu amigo usou um serviço REST retornando um JSON pra isso e funcionou bem até demais (tanto que ele já tem mais de 10.000 downloads no app).

Se me permite um conselho, fazer uma ponte entre o celular e o banco é legal porque você pode deixar uma parte maior do processamento no servidor de ponte e deixar o app mais simples (e consumindo menos bateria). Além de permitir que o app possa ser usado por outros dispositivos com SOs diferentes (incluindo PCs).

Mas acho que só o fator bateria já conta bastante :wink:

[quote=Ataxexe][quote=fernandopaiva][quote=Ataxexe]Até onde eu sei teria como, sim. O problema é que, mesmo o Android oferecendo suporte ao JDBC, o driver utilizado precisa ser funcionar na runtime do Android (lembrando que isso é devido à API do Android não ser a mesma do Java).

Como fica complicado garantir que tudo funcione 100%, o pessoal acaba usando um backend pra isso.[/quote]

Entaum kra, o duro é criar um webservice só pra isso pois a aplicação so roda localmente e Android vai se conectar por wireless com o banco principal…affs ! Tenso.[/quote]

Teria algum problema em usar o sqlite no próprio aparelho? Porque se você precisar compartilhar o banco com mais de um dispositivo você vai precisar mesmo criar uma ponte entre o celular e o banco.

Meu amigo usou um serviço REST retornando um JSON pra isso e funcionou bem até demais (tanto que ele já tem mais de 10.000 downloads no app).

Se me permite um conselho, fazer uma ponte entre o celular e o banco é legal porque você pode deixar uma parte maior do processamento no servidor de ponte e deixar o app mais simples (e consumindo menos bateria). Além de permitir que o app possa ser usado por outros dispositivos com SOs diferentes (incluindo PCs).

Mas acho que só o fator bateria já conta bastante ;)[/quote]

O problema de fazer essa ponte é ter mais de um servico rodando na rede, até msm pq vou ter q estudar como fazer essa ponte e acho q deveria ser mais simples isso, pelo que andei pesquisando essa é uma duvida q muitos tem como conectar JDBC diretamente com a base de dados, encontrei algumas respostas q naum resolveram meu problema, mas vou na pesquisa.

vlw e obrigado

Olá pessoal, sei que o post é antigo, mas você algum tutorial de como criar um webservice e fazer a ponte para o dispositivo android, estou conectando usando jdbc no banco progress e funciona perfeitamente em um aplicativo java, agora quando tento fazer a mesma conexão no android da erro.
Obrigado pela ajuda.

Alguma coisa ta errada pq da certo sim - http://capdroid.wordpress.com/2012/07/10/configuring-and-accessing-mysql-jdbc-driver-on-android-application/