--- /dev/null
+Subproject commit 74134da5c5aa1f8445b4a72e6e5b0ae17e09957f
<classpathentry kind="src" path="gen"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
- <classpathentry kind="lib" path="libs/evernote-client-android.jar"/>
- <classpathentry kind="lib" path="libs/libthrift.jar"/>
- <classpathentry kind="lib" path="libs/slf4j-android-1.5.8.jar"/>
- <classpathentry kind="lib" path="libs/evernote-api-1.22.jar"/>
+ <classpathentry kind="lib" path="libs/en-thrift-1.0-SNAPSHOT.jar"/>
+ <classpathentry kind="lib" path="libs/libthrift-1.0-SNAPSHOT-client.jar"/>
<classpathentry kind="lib" path="libs/scribe-1.3.1.jar"/>
<classpathentry kind="output" path="bin/classes"/>
</classpath>
android:launchMode="singleTop" >
</activity>
<activity
- android:name=".OAuthActivity"
+ android:name=".BookListActivity"
android:launchMode="singleTop" >
</activity>
<activity
- android:name=".BookListActivity"
- android:launchMode="singleTop" >
+ android:name="com.evernote.client.oauth.android.EvernoteOAuthActivity"
+ android:configChanges="orientation|keyboard" >
</activity>
<activity
- android:name="com.evernote.client.oauth.android.EvernoteOAuthActivity"
- android:launchMode="singleTask"
- android:configChanges="orientation|keyboard">
- <intent-filter>
- <!-- Change this to be en- followed by your consumer key -->
- <data android:scheme="en-yuji-k64613" />
- <action android:name="android.intent.action.VIEW" />
- <category android:name="android.intent.category.BROWSABLE"/>
- <category android:name="android.intent.category.DEFAULT" />
- </intent-filter>
+ android:name=".OAuthActivity" >
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+
+ <category android:name="android.intent.category.LAUNCHER" />
+ </intent-filter>
</activity>
<service
public static final int bookCloseButton=0x7f080001;
public static final int bookList=0x7f080000;
public static final int checkBox=0x7f080002;
- public static final int frameLayout=0x7f08000c;
- public static final int layout=0x7f080004;
- public static final int leftButton=0x7f08000e;
- public static final int mainButtonLayout=0x7f08000d;
- public static final int mainConfirmMsg=0x7f080006;
- public static final int mainMsgButtonLayout=0x7f080008;
- public static final int mainMsgCancelButton=0x7f08000a;
- public static final int mainMsgEditText=0x7f080007;
- public static final int mainMsgLayout=0x7f080005;
- public static final int mainMsgOkButton=0x7f080009;
- public static final int rightButton=0x7f08000f;
- public static final int scrollView=0x7f08000b;
- public static final int settingBookButton=0x7f080015;
- public static final int settingCloseButton=0x7f08001b;
- public static final int settingConfirmMsg=0x7f080011;
- public static final int settingListButton=0x7f080014;
- public static final int settingLoginButton=0x7f080012;
- public static final int settingLogoutButton=0x7f080013;
- public static final int settingMsgLayout=0x7f080010;
- public static final int settingUpdateButton=0x7f080016;
- public static final int settingUpdateDateLayout=0x7f080018;
- public static final int settingUpdateDateText=0x7f08001a;
- public static final int settingUpdateSpinner=0x7f080017;
- public static final int settingUpdateTitle=0x7f080019;
+ public static final int esdk__webview=0x7f080004;
+ public static final int frameLayout=0x7f08000d;
+ public static final int layout=0x7f080005;
+ public static final int leftButton=0x7f08000f;
+ public static final int mainButtonLayout=0x7f08000e;
+ public static final int mainConfirmMsg=0x7f080007;
+ public static final int mainMsgButtonLayout=0x7f080009;
+ public static final int mainMsgCancelButton=0x7f08000b;
+ public static final int mainMsgEditText=0x7f080008;
+ public static final int mainMsgLayout=0x7f080006;
+ public static final int mainMsgOkButton=0x7f08000a;
+ public static final int rightButton=0x7f080010;
+ public static final int scrollView=0x7f08000c;
+ public static final int settingBookButton=0x7f080016;
+ public static final int settingCloseButton=0x7f08001c;
+ public static final int settingConfirmMsg=0x7f080012;
+ public static final int settingListButton=0x7f080015;
+ public static final int settingLoginButton=0x7f080013;
+ public static final int settingLogoutButton=0x7f080014;
+ public static final int settingMsgLayout=0x7f080011;
+ public static final int settingUpdateButton=0x7f080017;
+ public static final int settingUpdateDateLayout=0x7f080019;
+ public static final int settingUpdateDateText=0x7f08001b;
+ public static final int settingUpdateSpinner=0x7f080018;
+ public static final int settingUpdateTitle=0x7f08001a;
public static final int text2=0x7f080003;
}
public static final class layout {
public static final int book_list=0x7f030000;
public static final int check_list_item_1=0x7f030001;
- public static final int main=0x7f030002;
- public static final int oauth=0x7f030003;
- public static final int setting=0x7f030004;
+ public static final int esdk__webview=0x7f030002;
+ public static final int main=0x7f030003;
+ public static final int oauth=0x7f030004;
+ public static final int setting=0x7f030005;
}
public static final class string {
- public static final int ErrorLogin=0x7f06002d;
- public static final int ErrorNetwork=0x7f06002c;
- public static final int ErrorSystem=0x7f06002e;
- public static final int ErrorUpdate=0x7f06002b;
- public static final int MenuAdd=0x7f060020;
- public static final int MenuCut=0x7f06001e;
- public static final int MenuDelete=0x7f060021;
- public static final int MenuPaste=0x7f06001f;
- public static final int MenuRename=0x7f060022;
- public static final int MenuSetting=0x7f060023;
- public static final int app_name=0x7f060000;
- public static final int cancelButton=0x7f060003;
- public static final int closeButton=0x7f060004;
- public static final int dialogErrorTitle=0x7f060028;
- public static final int dialogSystemError=0x7f060029;
- public static final int mainAddMsg=0x7f060008;
- public static final int mainConfirmMsg=0x7f060006;
- public static final int mainConfirmTitle=0x7f060005;
- public static final int mainDeleteMsg=0x7f060009;
- public static final int mainLeftButton=0x7f06000b;
- public static final int mainRenameMsg=0x7f06000a;
- public static final int mainRightButton=0x7f06000c;
- public static final int mainUpdateMsg=0x7f060007;
- public static final int noButton=0x7f060002;
- public static final int serviceUpdateDisableNetworkMsg=0x7f060024;
- public static final int serviceUpdateNotLoggedkMsg=0x7f060025;
- public static final int serviceUpdateReferenceDataMsg=0x7f060026;
- public static final int serviceUpdateUnexpectedErrorkMsg=0x7f060027;
- public static final int settingBookButton=0x7f060019;
- public static final int settingBookTitle=0x7f060018;
- public static final int settingConfirmMsg=0x7f06000e;
- public static final int settingConfirmTitle=0x7f06000d;
- public static final int settingDoListMsg=0x7f060011;
- public static final int settingDoSelectMsg=0x7f060013;
- public static final int settingDoUpdateMsg=0x7f060012;
- public static final int settingListButton=0x7f060017;
- public static final int settingLoginButton=0x7f060015;
- public static final int settingLoginMsg=0x7f060010;
- public static final int settingLoginTitle=0x7f060014;
- public static final int settingLogoutButton=0x7f060016;
- public static final int settingUpdateButton=0x7f06001b;
- public static final int settingUpdateDateTitle=0x7f06001d;
- public static final int settingUpdateMsg=0x7f06000f;
- public static final int settingUpdateTimeTitle=0x7f06001c;
- public static final int settingUpdateTitle=0x7f06001a;
- public static final int toastSystem=0x7f06002a;
- public static final int yesButton=0x7f060001;
+ public static final int ErrorLogin=0x7f050034;
+ public static final int ErrorNetwork=0x7f050033;
+ public static final int ErrorSystem=0x7f050035;
+ public static final int ErrorUpdate=0x7f050032;
+ public static final int MenuAdd=0x7f050027;
+ public static final int MenuCut=0x7f050025;
+ public static final int MenuDelete=0x7f050028;
+ public static final int MenuPaste=0x7f050026;
+ public static final int MenuRename=0x7f050029;
+ public static final int MenuSetting=0x7f05002a;
+ public static final int app_name=0x7f050007;
+ public static final int cancelButton=0x7f05000a;
+ public static final int closeButton=0x7f05000b;
+ public static final int dialogErrorTitle=0x7f05002f;
+ public static final int dialogSystemError=0x7f050030;
+ public static final int esdk__err_api_setup=0x7f050005;
+ public static final int esdk__err_authentication=0x7f050004;
+ public static final int esdk__err_protocol_version=0x7f050003;
+ public static final int esdk__evernote=0x7f050000;
+ public static final int esdk__evernote_login_failed=0x7f050001;
+ public static final int esdk__evernote_login_successful=0x7f050002;
+ public static final int esdk__loading=0x7f050006;
+ public static final int mainAddMsg=0x7f05000f;
+ public static final int mainConfirmMsg=0x7f05000d;
+ public static final int mainConfirmTitle=0x7f05000c;
+ public static final int mainDeleteMsg=0x7f050010;
+ public static final int mainLeftButton=0x7f050012;
+ public static final int mainRenameMsg=0x7f050011;
+ public static final int mainRightButton=0x7f050013;
+ public static final int mainUpdateMsg=0x7f05000e;
+ public static final int noButton=0x7f050009;
+ public static final int serviceUpdateDisableNetworkMsg=0x7f05002b;
+ public static final int serviceUpdateNotLoggedkMsg=0x7f05002c;
+ public static final int serviceUpdateReferenceDataMsg=0x7f05002d;
+ public static final int serviceUpdateUnexpectedErrorkMsg=0x7f05002e;
+ public static final int settingBookButton=0x7f050020;
+ public static final int settingBookTitle=0x7f05001f;
+ public static final int settingConfirmMsg=0x7f050015;
+ public static final int settingConfirmTitle=0x7f050014;
+ public static final int settingDoListMsg=0x7f050018;
+ public static final int settingDoSelectMsg=0x7f05001a;
+ public static final int settingDoUpdateMsg=0x7f050019;
+ public static final int settingListButton=0x7f05001e;
+ public static final int settingLoginButton=0x7f05001c;
+ public static final int settingLoginMsg=0x7f050017;
+ public static final int settingLoginTitle=0x7f05001b;
+ public static final int settingLogoutButton=0x7f05001d;
+ public static final int settingUpdateButton=0x7f050022;
+ public static final int settingUpdateDateTitle=0x7f050024;
+ public static final int settingUpdateMsg=0x7f050016;
+ public static final int settingUpdateTimeTitle=0x7f050023;
+ public static final int settingUpdateTitle=0x7f050021;
+ public static final int toastSystem=0x7f050031;
+ public static final int yesButton=0x7f050008;
}
public static final class style {
- public static final int BookCheckBox=0x7f050000;
+ public static final int BookCheckBox=0x7f060000;
}
}
+++ /dev/null
- Copyright (c) 2004-2008 QOS.ch
- All rights reserved.
-
- 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 Software without restriction, including
- without limitation the rights to use, copy, modify, merge, publish,
- distribute, sublicense, and/or sell copies of the Software, and to
- permit persons to whom the Software is furnished to do so, subject to
- the following conditions:
-
- The above copyright notice and this permission notice shall be
- included in all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
# Project target.
-target=android-7
+#target=android-7
+target=android-16
+android.library.reference.1=../../../../evernote-sdk-android1.0/lib/evernote-sdk-android/library
package com.yuji.ef;
+import android.app.Activity;
+import android.content.Intent;
import android.os.Bundle;
import android.view.View;
-import android.widget.Toast;
import com.evernote.client.oauth.android.EvernoteSession;
import com.yuji.ef.utility.BaseActivity;
-import com.yuji.ef.utility.EvernoteUtil;
import com.yuji.ef.utility.OAuthUtil;
/**
* directly to Evernote using the Cloud API.
*/
public class OAuthActivity extends BaseActivity {
-
- /***************************************************************************
- * You MUST change the following values to run this sample application. *
- ***************************************************************************/
-
- // Your Evernote API key. See http://dev.evernote.com/documentation/cloud/
- // Please obfuscate your code to help keep these values secret.
- // private static final String CONSUMER_KEY = "yuji-k64613";
- // private static final String CONSUMER_SECRET = "98b2cbf35f747d2d";
-
- /***************************************************************************
- * Change these values as needed to use this code in your own application. *
- ***************************************************************************/
-
- // Name of this application, for logging
- // private static final String TAG = "HelloEDAM";
-
- // A directory on disk where your application stores temporary data
- // private static final String APP_DATA_PATH =
- // "/Android/data/com.evernote.android.sample/temp/";
- // private static final String APP_DATA_PATH =
- // "/Android/data/com.yuji.ef/temp/";
-
- // Change to "www.evernote.com" to use the Evernote production service
- // instead of the sandbox
- // private static final String EVERNOTE_HOST = "sandbox.evernote.com";
- // private static final String EVERNOTE_HOST = "www.evernote.com";
-
- // private static final String APP_NAME = "FolderErver";
- // private static final String APP_VERSION = "1.0.0";
-
- /***************************************************************************
- * The following values are simply part of the demo application. *
- ***************************************************************************/
-
- // Activity result request codes
- // private static final int SELECT_IMAGE = 1;
-
- // The ENML preamble to every Evernote note.
- // Note content goes between <en-note> and </en-note>
- // private static final String NOTE_PREFIX =
- // "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
- // "<!DOCTYPE en-note SYSTEM \"http://xml.evernote.com/pub/enml2.dtd\">" +
- // "<en-note>";
-
- // The ENML postamble to every Evernote note
- // private static final String NOTE_SUFFIX = "</en-note>";
-
- // Used to interact with the Evernote web service
- // private EvernoteSession session;
-
- // UI elements that we update
- // private Button btnAuth;
- // private Button btnSave;
- // private Button btnSelect;
- // private TextView msgArea;
-
- // The path to and MIME type of the currently selected image from the
- // gallery
- // private String filePath;
- // private String mimeType;
- // private String fileName;
-
- // ADD
private OAuthUtil util = OAuthUtil.getInstance();
- private boolean isInit = true;
- /** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- // setContentView(R.layout.main);
setContentView(R.layout.oauth);
- // DELETE
- // msgArea = (TextView)findViewById(R.id.message);
- // btnAuth = (Button) findViewById(R.id.auth_button);
- // btnSelect = (Button) findViewById(R.id.select_button);
- // btnSave = (Button) findViewById(R.id.save_button);
-
setupSession();
}
@Override
- public void onResume() {
- super.onResume();
-
- // Complete the Evernote authentication process if necessary
- // EDIT
- // if (!session.completeAuthentication(getPreferencesForAuthData())) {
- // // We only want to do this when we're resuming after
- // authentication...
- // Toast.makeText(this, "Evernote login failed",
- // Toast.LENGTH_LONG).show();
- // }
- boolean isCompleteAuth = util.isCompleteAuth(this);
- if (!isInit && !isCompleteAuth) {
- // We only want to do this when we're resuming after
- // authentication...
- Toast.makeText(this, getString(R.string.ErrorLogin),
- Toast.LENGTH_LONG).show();
- }
-
- updateUi();
-
- // ADD
- if (isInit) {
- isInit = false;
- } else {
- EvernoteUtil.getInstance().setSession(util.getSession());
- if (isCompleteAuth) {
+ public void onActivityResult(int requestCode, int resultCode, Intent data) {
+ super.onActivityResult(requestCode, resultCode, data);
+
+ switch (requestCode) {
+ case EvernoteSession.REQUEST_CODE_OAUTH:
+ if (resultCode == Activity.RESULT_OK) {
util.setLoginTime(this);
- }
- else {
+ } else {
util.logout(this);
}
finish();
+ break;
}
}
- /**
- * Evernote authentication data will be stored to this SharedPreferences if
- * we are resuming as a result of a successful OAuth authorization. You may
- * wish to pass a different SharedPreferences so that Evernote settings are
- * stored along with other settings persisted by your application.
- */
- // private SharedPreferences getPreferencesForAuthData() {
- // return getPreferences(MODE_PRIVATE);
- // }
-
- /**
- * Setup the EvernoteSession used to access the Evernote API.
- */
private void setupSession() {
- // EDIT
- // ApplicationInfo info =
- // new ApplicationInfo(CONSUMER_KEY, CONSUMER_SECRET, EVERNOTE_HOST,
- // APP_NAME, APP_VERSION);
- //
- // // Retrieve persisted authentication information
- // session = new EvernoteSession(info, getPreferencesForAuthData(),
- // getTempDir());
util.setupSession(this);
- updateUi();
-
- // ADD
startAuth(null);
}
- /**
- * Update the UI based on Evernote authentication state.
- */
- private void updateUi() {
- // DELETE
- // if (session.isLoggedIn()) {
- // btnAuth.setText(R.string.label_log_out);
- // btnSave.setEnabled(true);
- // btnSelect.setEnabled(true);
- // } else {
- // btnAuth.setText(R.string.label_log_in);
- // btnSave.setEnabled(false);
- // btnSelect.setEnabled(false);
- // }
- }
-
- /**
- * Called when the user taps the "Log in to Evernote" button. Initiates the
- * Evernote OAuth process, or logs out if the user is already logged in.
- */
public void startAuth(View view) {
- // ADD
- EvernoteSession session = util.getSession();
+ EvernoteSession mEvernoteSession = util.getSession();
- // EDIT
- // if (session.isLoggedIn()) {
- // session.logOut(util.getPreferencesForAuthData(this));
- // } else {
- // session.authenticate(this);
- // }
- if (session.isLoggedIn()) {
- session.logOut(util.getPreferencesForAuthData(this));
+ if (mEvernoteSession.isLoggedIn()) {
+ mEvernoteSession.logOut(getApplicationContext());
}
- session.authenticate(this);
-
+ mEvernoteSession.authenticate(this);
updateUi();
}
- /**
- * Get a temporary directory that can be used by this application to store
- * potentially large files sent to and retrieved from the Evernote API.
- */
- // private File getTempDir() {
- // return new File(Environment.getExternalStorageDirectory(),
- // APP_DATA_PATH);
- // }
+ private void updateUi() {
+ ;
+ }
}
import android.content.SharedPreferences;
import android.os.Environment;
-import com.evernote.client.conn.ApplicationInfo;
import com.evernote.client.oauth.android.EvernoteSession;
import com.yuji.ef.common.Constant;
import com.yuji.ef.pref.EditPrefUtil;
// Debian
//private static final String CONSUMER_SECRET = "G5r7t1nHC+AIf6dYHuIVC7Jr/iVIMtgMZ0PObN6xV2Q=";
// Mac
- private static final String CONSUMER_SECRET = "a/E89hlW9foWMh/ReopNucX+/WQ9WTs4YwvHP1cGH9s=" ;
+ private static final String CONSUMER_SECRET = "a/E89hlW9foWMh/ReopNucX+/WQ9WTs4YwvHP1cGH9s=" ;
private static final String APP_DATA_PATH = "/Android/data/com.yuji.ef/temp/";
- private static final String EVERNOTE_HOST = "www.evernote.com";
-
- private static final String APP_NAME = "FolderErver";
- private static final String APP_VERSION = "1.0.0";
+ private static final String EVERNOTE_HOST = EvernoteSession.HOST_PRODUCTION;
private static OAuthUtil instance = null;
private static String consumerSecret = null;
- private EvernoteSession session;
+ private EvernoteSession mEvernoteSession;
public static OAuthUtil getInstance() {
if (instance == null) {
}
+ public EvernoteSession getSession() {
+ return mEvernoteSession;
+ }
+
public EvernoteSession setupSession(Context context) {
- if (consumerSecret == null){
+ if (consumerSecret == null) {
Encryption en = Encryption.getInstance();
- //String s = en.getEncrypted(context, "");
+ // String s = en.getEncrypted(context, "");
consumerSecret = en.getDecrypted(context, CONSUMER_SECRET);
}
-
- ApplicationInfo info = new ApplicationInfo(CONSUMER_KEY,
- consumerSecret, EVERNOTE_HOST, APP_NAME, APP_VERSION);
// Retrieve persisted authentication information
- session = new EvernoteSession(info,
- getPreferencesForAuthData(context), getTempDir());
+ File tempDir = getTempDir();
+ // mEvernoteSession = EvernoteSession.init(context, CONSUMER_KEY,
+ // CONSUMER_SECRET, EVERNOTE_HOST, null);
+ mEvernoteSession = EvernoteSession.init(context, CONSUMER_KEY,
+ consumerSecret, EVERNOTE_HOST, tempDir);
// セッションの期限切れをチェック
EditPrefUtil pref = new EditPrefUtil(context);
long diff = (now - loginTime) / 1000;
//if (loginTime > 0 && diff > 60){ // 1分
- if (loginTime > 0 && diff > (365 - 1) * 24 * 60 * 60){ // 余裕を持って1日前に削除
+ if (loginTime > 0 && diff > (365 - 1) * 24 * 60 * 60) { // 余裕を持って1日前に削除
logout(context);
pref.put(Constant.PREF_LOGIN_DATE, 0L);
pref.update();
- session = new EvernoteSession(info,
- getPreferencesForAuthData(context), getTempDir());
+ // 再作成
+ // mEvernoteSession = new EvernoteSession(info,
+ // getPreferencesForAuthData(context), getTempDir());
+ mEvernoteSession = EvernoteSession.init(context, CONSUMER_KEY,
+ consumerSecret, EVERNOTE_HOST, tempDir);
}
-
- return session;
- }
- public boolean isCompleteAuth(Context context) {
- if (session == null) {
- return false;
- }
- return session
- .completeAuthentication(getPreferencesForAuthData(context));
+ return mEvernoteSession;
}
public SharedPreferences getPreferencesForAuthData(Context context) {
APP_DATA_PATH);
}
- public EvernoteSession getSession() {
- return session;
- }
-
- public void logout(Context context){
- session.logOut(getPreferencesForAuthData(context));
-
- EditPrefUtil pref = new EditPrefUtil(context);
- pref.put(Constant.PREF_LOGIN_DATE, 0L);
- pref.update();
+ public void logout(Context context) {
+ if (mEvernoteSession != null && mEvernoteSession.isLoggedIn()) {
+ mEvernoteSession.logOut(context);
+ }
}
public void setLoginTime(Context context) {