sashabelonogov
sashabelonogov

Reputation: 81

PostgreSQL JDBC connection fails on Android 4.0

Does anyone knows what can I do to make JDBC connection work on Android 4.0. It works fine on Android 1.6-2.3. I use Dave Cramer's build: http://groups.google.com/group/pgandroid/browse_thread/thread/d8b400f039f66d5f/f77b2e2a99370a36?lnk=raot#f77b2e2a99370a36

The Logcat says:

06-10 17:35:51.043: E/AndroidRuntime(798): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.belonogov.connectjdbc/com.belonogov.connectjdbc.ConnectJDBCActivity}: java.lang.NullPointerException
06-10 17:35:51.043: E/AndroidRuntime(798):  
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at android.app.ActivityThread.access$600(ActivityThread.java:123)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at android.os.Handler.dispatchMessage(Handler.java:99)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at android.os.Looper.loop(Looper.java:137)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at android.app.ActivityThread.main(ActivityThread.java:4424)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at java.lang.reflect.Method.invokeNative(Native Method)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at java.lang.reflect.Method.invoke(Method.java:511)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at dalvik.system.NativeStart.main(Native Method)
06-10 17:35:51.043: E/AndroidRuntime(798): Caused by: java.lang.NullPointerException
06-10 17:35:51.043: E/AndroidRuntime(798):  
at com.belonogov.connectjdbc.ConnectJDBCActivity$CustomDrawableView.<init>(ConnectJDBCActivity.java:81)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at com.belonogov.connectjdbc.ConnectJDBCActivity.onCreate(ConnectJDBCActivity.java:27)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at android.app.Activity.performCreate(Activity.java:4465)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
06-10 17:35:51.043: E/AndroidRuntime(798):  
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
06-10 17:35:51.043: E/AndroidRuntime(798):  
... 11 more

It's just a simple application that connects to a database.

Upvotes: 4

Views: 1317

Answers (2)

Craig Ringer
Craig Ringer

Reputation: 324395

If at all possible, consider moving away from direct JDBC on your android device. It's inefficient in terms of round trips, etc, and isn't robust in the face of unreliable connections.

See How can I securely (indirectly) query a postgresql database within android? .

Upvotes: 2

A.H.
A.H.

Reputation: 66263

Most likely you will find the answer here:

06-10 17:35:51.043: E/AndroidRuntime(798): Caused by: java.lang.NullPointerException
06-10 17:35:51.043: E/AndroidRuntime(798):      at com.belonogov.connectjdbc.ConnectJDBCActivity$CustomDrawableView.<init>(ConnectJDBCActivity.java:81)
06-10 17:35:51.043: E/AndroidRuntime(798):      at com.belonogov.connectjdbc.ConnectJDBCActivity.onCreate(ConnectJDBCActivity.java:27)

This means: Lookup the class ConnectJDBCActivity.java, line 81 and look what reference might be null.

Upvotes: 0

Related Questions