开发者

NoClassFoundError in Android

I am implementing twitter and facebook in my app, but the activity returns error as NoClassFoundError on SettingActivity but my activity is already in manifest, what should be the reason? Please help me out.

Error:

05-09 19:32:42.485: ERROR/AndroidRuntime(903): java.lang.NoClassDefFoundError: org.shopzilla.android.moretab.SettingActivity
05-09 19:32:42.485: ERROR/AndroidRuntime(903):     at org.shopzilla.android.moretab.More$1.onClick(More.java:46)
05-09 19:32:42.485: ERROR/AndroidRuntime(903):     at android.view.View.performClick(View.java:2485)
05-09 19:32:42.485: ERROR/AndroidRuntime(903):     at android.view.View$PerformClick.run(View.java:9080)
05-09 19:32:42.485: ERROR/AndroidRuntime(903):     at android.os.Handler.handleCallback(Handler.java:587)
05-09 19:32:42.485: ERROR/AndroidRuntime(903):     at android.os.Handler.dispatchMessage(Handler.java:92)
05-09 19:32:42.485: ERROR/AndroidRuntime(903):     at android.os.Looper.loop(Looper.java:123)
05-09 19:32:42.485: ERROR/AndroidRuntime(903):     at android.app.ActivityThread.main(ActivityThread.java:3683)
05-09 19:32:42.485: ERROR/AndroidRuntime(903):     at java.lang.reflect.Method.invokeNative(Native Method)
05-09 19:32:42.485: ERROR/AndroidRuntime(903):     at java.lang.reflect.Method.invoke(Method.java:507)
05-09 19:32:42.485: ERROR/AndroidRuntime(903):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
05-09 19:32:42.485: ERROR/AndroidRuntime(903):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
05-09 19:32:42.485: ERROR/AndroidRuntime(903):     at dalvik.system.NativeStart.main(Native Method)

Code:

package org.shopzilla.android.moretab;

import java.util.List;

import net.xeomax.FBRocket.FBRocket;
import net.xeomax.FBRocket.Facebook;
import net.xeomax.FBRocket.LoginListener;
import net.xeomax.FBRocket.ServerErrorException;

import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.shopzilla.android.common.R;
import org.shopzilla.android.facebook.FacebookActivity;
import org.shopzilla.android.facebook.FacebookWebOAuthActivity;
import org.shopzilla.android.twitter.TwitterActivity;
import org.shopzilla.android.twitter.TwitterWebOAuthActivity;

import twitter4j.http.RequestToken;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class SettingActivity extends Activity implements LoginListener{
     String bytesSent;
        HttpClient httpclient;
        int count1;
        // List with parameters and their values
        List<NameValuePair> nameValuePairs;
        TextView mText;
        Button btn_facebook;
        Button btn_twitter;
        FBRocket fbRocket;
        RequestToken rToken;
        String oauthVerifier;
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.more_setting);

        Button btn_twitter = (Button)findViewById(R.id.btn_more_setting_twitter);
        Button btn_facebook = (Button)findViewById(R.id.btn_More_setting_facebook);
        btn_twitter.setOnClickListener(new View.OnClickListener() {

            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent intent = new Intent(SettingActi开发者_运维技巧vity.this,TwitterActivity.class);
                startActivity(intent);
                //displayTwitterAuthorization();

            }
        });

        btn_facebook.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {
                // TODO Auto-generated method stub
                /*Intent intent = new Intent(SettingActivity.this,FacebookActivity.class);
                startActivity(intent);*/
                shareFacebook();
                //displayFacebookAuthorization();
                //shareFacebook();
            }
        });



    }
    public void shareFacebook() {
        fbRocket = new FBRocket(SettingActivity.this, "ShopZilla",
        "172619129456913");

        if (fbRocket.existsSavedFacebook()) {
        fbRocket.loadFacebook();
        } else {
        fbRocket.login(R.layout.facebook);
        }
        }

        public void onLoginFail() {
        fbRocket.displayToast("Login failed!");
        fbRocket.login(R.layout.facebook);
        }

        public void onLoginSuccess(Facebook facebook) {
        // TODO Auto-generated method stub
        fbRocket.displayToast("Login success!");

        try {
        facebook.setStatus("This is your status");
        fbRocket.displayDialog("Status Posted Successfully!! "
        + facebook.getStatus());
        } catch (ServerErrorException e) {
        if (e.notLoggedIn()) {
        fbRocket.login(R.layout.facebook);
        } else {
        System.out.println(e);
        }
        }
        }



}


Make sure you add to the manifest file each activity that you fire:

<activity android:name="org.shopzilla.android.moretab.SettingActivity" />


Try add folder "libs" (and not "lib") to the project. Then add all twitter's library to this folder and run again.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜