Android Open Source - PhotoToDucksboard Configuration Activity






From Project

Back to project page PhotoToDucksboard.

License

The source code is released under:

Copyright (c) 2012 Jan Urbanski Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Softw...

If you think the Android project PhotoToDucksboard listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.ducksboard.photo;
/*from w  w w.  j a  v  a2  s .com*/
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.EditText;
import android.widget.ProgressBar;
import android.widget.TextView;


public class ConfigurationActivity extends Activity {

    public static final String CONFIG_INTENT = "com.ducksboard.photo.intent.CONFIG";
    public static final String PREF_NAME = "com.ducksboard.photo.prefs";
    public static final String USERNAME_PREF = "username";
    public static final String API_KEY_PREF = "apikey";

    private EditText apiKeyText;
    private EditText emailText;
    private EditText passwordText;
    private TextView userInfoText;
    private TextView infoText;
    private ProgressBar progressBar;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        SharedPreferences settings = getSharedPreferences(PREF_NAME,
                MODE_PRIVATE);
        String username = settings.getString(USERNAME_PREF, null);
        if (username != null) {
            finishIfIntent();
        }

        setContentView(R.layout.activity_configure);

        apiKeyText = (EditText) findViewById(R.id.apiKey);
        emailText = (EditText) findViewById(R.id.email);
        passwordText = (EditText) findViewById(R.id.password);
        userInfoText = (TextView) findViewById(R.id.userinfo);
        infoText = (TextView) findViewById(R.id.info);
        progressBar = (ProgressBar) findViewById(R.id.progress);

        if (username != null) {
            setUserInfo(username);
            infoText.setText(R.string.change);
        }
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        return false;
    }

    public void saveConfiguration(View view) {
        ConnectivityManager connMgr = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
        if (networkInfo == null || !networkInfo.isConnected()) {
            infoText.setText(R.string.not_connected);
            return;
        }

        String apiKey = apiKeyText.getText().toString();
        SaveConfiguration task = new SaveConfiguration(this);

        if (apiKey.length() != 0) {
            ApiKeyCredentials credentials = new ApiKeyCredentials(apiKey);
            task.execute(credentials);
            return;
        }

        String email = emailText.getText().toString();
        String password = passwordText.getText().toString();

        UserPasswordCredentials credentials = new UserPasswordCredentials(
                email, password);
        task.execute(credentials);
    }

    public void saveConfigurationStart() {
        infoText.setVisibility(View.GONE);
        progressBar.setVisibility(View.VISIBLE);
    }

    public void saveConfigurationInProgress() {
        progressBar.incrementProgressBy(1);
    }

    public void saveConfigurationDone(UserInfo result) {
        progressBar.setProgress(progressBar.getMax());
        progressBar.setVisibility(View.GONE);
        infoText.setVisibility(View.VISIBLE);

        if (result == null) {
            infoText.setText(R.string.failed);
            return;
        }

        setUserInfo(result.username);
        infoText.setText(R.string.saved);

        SharedPreferences settings = getSharedPreferences(PREF_NAME,
                MODE_PRIVATE);
        SharedPreferences.Editor editor = settings.edit();
        editor.putString(USERNAME_PREF, result.username);
        editor.putString(API_KEY_PREF, result.apiKey);
        editor.commit();

        finishIfIntent();
    }

    private void setUserInfo(String username) {
        userInfoText.setText(username);
    }

    private void finishIfIntent() {
        Intent intent = getIntent();

        if (!intent.getBooleanExtra(CONFIG_INTENT, false)) {
            return;
        }

        setResult(RESULT_OK);
        finish();
    }
}




Java Source Code List

com.ducksboard.photo.ApiKeyCredentials.java
com.ducksboard.photo.ConfigurationActivity.java
com.ducksboard.photo.Credentials.java
com.ducksboard.photo.DucksboardApi.java
com.ducksboard.photo.ImageResizer.java
com.ducksboard.photo.SaveConfiguration.java
com.ducksboard.photo.SendImage.java
com.ducksboard.photo.SendInfo.java
com.ducksboard.photo.ShareActivity.java
com.ducksboard.photo.UserInfo.java
com.ducksboard.photo.UserPasswordCredentials.java
com.ducksboard.photo.WidgetInfoAdapter.java
com.ducksboard.photo.WidgetInfo.java
com.ducksboard.photo.WidgetsListLoad.java