Driver JDBC PostgreSQL con Android

Estoy tratando de conectar mi aplicación de Android a un servidor (PostgreSQL) con el controlador JDBC, pero tengo este error:

java.lang.ClassNotFoundException: org.postgresql.Driver ... Caused by: java.lang.NoClassDefFoundError: org/postgresql/Driver ... 12 more Caused by: java.lang.ClassNotFoundException: org.postgresql.Driver ... java.sql.SQLException: No suitable driver 

Intenté muchas cosas, como agregar la dirección del controlador en la ruta, pero nada funciona. Seguí este tutorial: http://appliedcoffeetechnology.tumblr.com/post/10657124340 y agregué el controlador JDBC4 (también probé el JDBC3), en la ruta de comstackción.

¿Todos pueden ayudarme?

Si bien no es la respuesta estricta a su pregunta, tengo una sugerencia.

No intente usar JDBC en el dispositivo Android directamente. Ahorrarás muchas molestias de esa manera. Escribí sobre eso con más detalle en la pregunta “JDBC vs Web Service para Android” .

Escriba su lógica de base de datos en un servidor de aplicaciones accesible a través de la web y hable con ese servidor de aplicaciones a través de HTTP + JSON, SOAP, XML-RPC o similar. Esto será mucho más eficiente en ancho de banda y puede hacer que su aplicación sea mucho más tolerante con la conectividad de esa manera. También le ahorra tener que exponer su servidor de base de datos directamente a Internet, no es una gran preocupación con PostgreSQL siempre y cuando use SSL, pero es mejor no tener que hacerlo en absoluto.

Usando JAX-RS en JBoss AS 7, Tomcat 7, o similar, debería ser capaz de armar una API de servicios RESTful XML / JSON para su aplicación con bastante facilidad. La gente también parece juntar API REST / JSON bastante rápido con PHP.

Puede escribir una API web JSON / REST en prácticamente cualquier idioma que desee con distintos grados de facilidad. Solo busque el REST server yourlanguagename .

“Kaw” ha señalado en una respuesta eliminada que también hay controladores JDBC virtuales que canalizan las solicitudes a través de HTTP. Estos pueden ser adecuados para algunas aplicaciones.