2012-05-08 5 views
0

Je travaille dans une application android et je veux désactiver un bouton de retour dans mon application android. Je le redirige vers une URL et je veux désactiver le bouton de retour là-bas. Aidez-moi, s'il vous plaît.Désactiver le bouton de retour

est ici code ma

public class PrepareRequestTokenActivity extends Activity { 

    final String TAG = getClass().getName(); 

    private OAuthConsumer consumer; 
    private OAuthProvider provider; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     try { 
      setContentView(R.layout.twitter); 
      ProgressDialog dialog = ProgressDialog.show(PrepareRequestTokenActivity.this, "", 
        "Loading. Please wait...", true); 
      this.consumer = new CommonsHttpOAuthConsumer(
        Constants.CONSUMER_KEY, Constants.CONSUMER_SECRET); 
      this.provider = new CommonsHttpOAuthProvider(Constants.REQUEST_URL, 
        Constants.ACCESS_URL, Constants.AUTHORIZE_URL); 
     } catch (Exception e) { 
      Log.e(TAG, "Error creating consumer/provider", e); 
     } 

     Log.i(TAG, "Starting task to retrieve request token."); 
     new OAuthRequestTokenTask(this, consumer, provider).execute(); 
    } 

    @Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
     if ((keyCode == KeyEvent.KEYCODE_BACK)) { 
      Log.d(this.getClass().getName(), "back button pressed"); 
     } 
     return super.onKeyDown(keyCode, event); 
    } 


    /** 
    * Called when the OAuthRequestTokenTask finishes (user has authorized the 
    * request token). The callback URL will be intercepted here. 
    */ 
    @Override 
    public void onNewIntent(Intent intent) { 
     super.onNewIntent(intent); 
     SharedPreferences prefs = PreferenceManager 
       .getDefaultSharedPreferences(this); 

     final Uri uri = intent.getData(); 
     if (uri != null 
       && uri.getScheme().equals(Constants.OAUTH_CALLBACK_SCHEME)) { 
      Log.i(TAG, "Callback received : " + uri); 
      Log.i(TAG, "Retrieving Access Token"); 
      new RetrieveAccessTokenTask(this, consumer, provider, prefs) 
        .execute(uri); 


      setResult(Activity.RESULT_OK); 

      finish(); 
     } 
    } 




    public class RetrieveAccessTokenTask extends AsyncTask<Uri, Void, Void> { 

     private Context context; 
     private OAuthProvider provider; 
     private OAuthConsumer consumer; 
     private SharedPreferences prefs; 

     public RetrieveAccessTokenTask(Context context, OAuthConsumer consumer, 
       OAuthProvider provider, SharedPreferences prefs) { 
      this.context = context; 
      this.consumer = consumer; 
      this.provider = provider; 
      this.prefs = prefs; 
     } 

     /** 
     * Retrieve the oauth_verifier, and store the oauth and 
     * oauth_token_secret for future API calls. 
     */ 
     @Override 
     protected Void doInBackground(Uri... params) { 
      final Uri uri = params[0]; 
      final String oauth_verifier = uri 
        .getQueryParameter(OAuth.OAUTH_VERIFIER); 

      try { 
       provider.retrieveAccessToken(consumer, oauth_verifier); 

       final Editor edit = prefs.edit(); 
       edit.putString(OAuth.OAUTH_TOKEN, consumer.getToken()); 
       edit.putString(OAuth.OAUTH_TOKEN_SECRET, 
         consumer.getTokenSecret()); 
       edit.commit(); 

       String token = prefs.getString(OAuth.OAUTH_TOKEN, ""); 
       String secret = prefs.getString(OAuth.OAUTH_TOKEN_SECRET, ""); 

       consumer.setTokenWithSecret(token, secret);        

       Log.i(TAG, "OAuth - Access Token Retrieved"); 

      } catch (Exception e) { 
       Log.e(TAG, "OAuth - Access Token Retrieval Error", e); 
      } 

      return null; 
     } 

    } 
+2

Voir [http://stackoverflow.com/questions/5673358/how-to-disable-back-button-in-android][1] – vikky

Répondre

0

@Override public void onBackPressed() {// ne fais rien. }

2

Remplacer la méthode onBackPressed

@Override 
public void onBackPressed() { 
    return; 
} 

nécessite API de niveau 5 ou plus

1

Évitez d'appeler le comportement des parents, par exemple, retirer super.onBackPressed() dans votre méthode de remplacement

@Override 
public void onBackPressed() { 
    return; 
} 
Questions connexes