I am trying to use twitter4j for my app to connect and post to twitter. I am following this tutorial. I have downloaded the example project from here and try to run it on android 2.3.3
. I am sure that i have modified Constants.java
file correctly according to my twitter developer website. In TwitterUtils.java
i have enter OAUTH_TOKEN
and OAUTH_TOKEN_SECRET
also. but after running it, i got following error messages :
> E/dalvikvm(374): Could not find class 'twitter4j.http.AccessToken', referenced from method com.ecs.android.sample.twitter.TwitterUtils.isAuthenticated
>W/dalvikvm(374): VFY: unable to resolve new-instance 67 (Ltwitter4j/http/AccessToken;) in Lcom/ecs/android/sample/twitter/TwitterUtils;
>D/dalvikvm(374): VFY: replacing opcode 0x22 at 0x0010
>D/dalvikvm(374): VFY: dead code 0x0012-002f in Lcom/ecs/android/sample/twitter/TwitterUtils;.isAuthenticated (Landroid/content/SharedPreferences;)Z
>E/dalvikvm(374): Could not find class 'twitter4j.http.AccessToken', referenced from method com.ecs.android.sample.twitter.TwitterUtils.sendTweet
>W/dalvikvm(374): VFY: unable to resolve new-instance 67 (Ltwitter4j/http/AccessToken;) in Lcom/ecs/android/sample/twitter/TwitterUtils;
>D/dalvikvm(374): VFY: replacing opcode 0x22 at 0x0010
>D/dalvikvm(374): VFY: dead code 0x0012-002b in Lcom/ecs/android/sample/twitter/TwitterUtils;.sendTweet (Landroid/content/SharedPreferences;Ljava/lang/String;)V
>D/AndroidRuntime(374): Shutting down VM
>W/dalvikvm(374): threadid=1: thread exiting with uncaught exception (group=0x40015560)
>E/AndroidRuntime(374): FATAL EXCEPTION: main
>E/AndroidRuntime(374): java.lang.NoClassDefFoundError: twitter4j.http.AccessToken
>E/AndroidRuntime(374): at com.ecs.android.sample.twitter.TwitterUtils.isAuthenticated(TwitterUtils.java:18)
>E/AndroidRuntime(374): at com.ecs.android.sample.twitter.AndroidTwitterSample.updateLoginStatus(AndroidTwitterSample.java:72)
>E/AndroidRuntime(374): at com.ecs.android.sample.twitter.AndroidTwitterSample.onResume(AndroidTwitterSample.java:68)
>E/AndroidRuntime(374): at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1150)
>E/AndroidRuntime(374): at android.app.Activity.performResume(Activity.java:3832)
>E/AndroidRuntime(374): at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2110)
>E/AndroidRuntime(374): at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2135)
>E/AndroidRuntime(374): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1668)
>E/AndroidRuntime(374): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
>E/AndroidRuntime(374): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
>E/AndroidRuntime(374): at android.os.Handler.dispatchMessage(Handler.java:99)
>E/AndroidRuntime(374): at android.os.Looper.loop(Looper.java:130)
>E/AndroidRuntime(374): at android.app.ActivityThread.main(ActivityThread.java:3683)
>E/AndroidRuntime(374): at java.lang.reflect.Method.invokeNative(Native Method)
>E/AndroidRuntime(374): at java.lang.reflect.Method.invoke(Method.java:507)
>E/AndroidRuntime(374): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
>E/AndroidRuntime(374): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
>E/AndroidRuntime(374): at dalvik.system.NativeStart.main(Native Method)
am not sure if i am wrong, in Constant.java, i haven't change anything in
public static final String REQUEST_URL = "https://api.twitter.com/oauth/request_token";
public static final String ACCESS_URL = "https://api.twitter.com/oauth/access_token";
public static final String AUTHORIZE_URL = "https://api.twitter.com/oauth/authorize";
public static final String OAUTH_CALLBACK_SCHEME = "x-oauthflow-twitter";
public static final String OAUTH_CALLBACK_HOST = "callback";
public static final String OAUTH_CALLBACK_URL = OAUTH_CALLBACK_SCHEME + "://" + OAUTH_CALLBACK_HOST;
I have tried changing "callback"
with "http://www.MyWebsite.com"
Please advice how can I correct these problems.
libs
if you have kept it lib please change it to libs
and then chec - MKJParekh 2012-04-04 08:33
You need to change your Folder name from lib
to libs
as you have updated ADT 17.
Checkout this Article for in detail information on this topic.
In case someone is using ADT 18, I did not have a lib folder at all, I was using Project, Properties, Java Build Path, Libraries tab exclusively. To resolve this issue, I created a libs folder within my project, copied my external jars to this folder, and then removed the references in the Libraries tab. The project rebuilt and worked!