This is a staging forum for AgileBits, not an official support forum. Visit http://discussions.agilebits.com instead.

Aug 11, 10 Anouncement. 1Password for Android with Dropbox support is available on Market

GeneY
GeneY AWS Team
Dear 1Password for Android users,



New Beta 1.5.1 with Dropbox support is available today for download on Market.

Please give it a try and let me know your comments, suggestions and observations.



The previous release (last weekend) had some serious issues with data transfer of the large files.

The issue has been identified, fixed and tested thoroughly.



My testing keychain has 210 items of all types, some of them are huge (expecially secure notes), up to 170K each

Total size of a default folder on my phone (under 1Password.agilekeycain/data where all items are stored) is more than 6M.

Initial load of all files through Wi-Fi network takes 4-6 min consistently, getting updated files is about 15- 20 sec ( for 2-4 files).

No crashes have been observed so far.



Notice that sometimes there is a network delay on Dropbox server (probably releated to the number of concurrent users),

or Server becomes temporarily unavailable, in this case just be patient or resync later.



File loading is incremental, meaning that if some file got corrupted during an import,

it can be downloaded successfully the very next time.



Decryption of a very long Secure Note is also a snap (on Nexus G4 it takes less then a second).



There is a new Help, I tried to provide as much details as possible and illustrate it with screenshots.

For the list of all updates, please read the "What is new" section in the About dialog.



I am awaiting your feedback.



Best Regards,

Gene

Android Developer

Comments

  • I am happy that synchronisation is coming! You are obviously putting a lot of efforts into this!



    BUT, I just tried the new version, and was not able to synchronize. I just got the following:



    Autentication failed. Status : 0 Teason: NULL



    Did I do something wrong or is it a bug?



    J.
  • [quote name='jfj' timestamp='1281557200' post='8264']

    I am happy that synchronisation is coming! You are obviously putting a lot of efforts into this!



    BUT, I just tried the new version, and was not able to synchronize. I just got the following:



    Autentication failed. Status : 0 Teason: NULL



    Did I do something wrong or is it a bug?



    J.

    [/quote]





    So sorry, my fault, wrong password (but that was not communicated).

    BUT, next problem: failed due to "network issues" - Code 404???? - But my network is up an running perfectly for other programs.
  • GeneY
    GeneY AWS Team
    Hi jfj,



    The message you are having states that your dropbox credentials are incorrect.

    Please make sure you have valid username and password for your Dropbox.



    Please let me know if you need more help.



    Best Regards,

    Gene

    Android Developer



    [quote name='jfj' timestamp='1281557200' post='8264']

    I am happy that synchronisation is coming! You are obviously putting a lot of efforts into this!



    BUT, I just tried the new version, and was not able to synchronize. I just got the following:



    Autentication failed. Status : 0 Teason: NULL



    Did I do something wrong or is it a bug?



    J.

    [/quote]
  • I just got an email from you, explaining that I should get a new version from Market. Then it worked perfectly.



    I just want to say that I am very impressed both with your application, your dedication AND your customer service - very quick response!



    J.
  • luckie_reubs
    luckie_reubs Junior Member
    Forgive me if this has been addressed, but I can't find the answer. What am I supposed to do with my 1Password for Mac to get it to talk to Dropbox to sync to my Android?



    I'm thinking I'm supposed to move my keychain to my dropbox folder and then point 1Password to that file on Dropbox. Does it go in the topmost level of Dropbox, though?



    Thanks so much for making this happen! It'll be great to have!
  • billfrech
    edited August 2010
    I have a different problem with today's update.



    I downloaded the new version from the Market and could not get my Dropbox file to update. I deleted the file from the SD card folder and retried. 1Password launched as if starting for the first time and prompted me to sync either from Dropbox or from the SD card. I chose Dropbox and the sync went smoothly. Took about 10 minutes, but the "Sync (OK)" screen finally appeared and prompted me to relaunch, which I did. All my entries are there, but here's my problem. When I open MOST entries (I'm guessing at least 75% of 300+), I get the following:



    ERROR:



    Corrupted file:

    0300033949488882388383939939393939(whatever).1password

    Reason: JSONObject["keyID"] not found..

    Resync your app to replace the file.



    I have done this repeatedly using both Wi-Fi and 3G. I have deleted the Dropbox folder on the SD card, uninstalled 1Password, re-downloaded from the market, re-snyced, etc. Nothing seems to work.



    Any ideas? Anyone's help is greatly appreciated.



    Thanks.



    Bill
  • GeneY
    GeneY AWS Team
    edited August 2010
    Hi Bill and everyone,



    First of all , thank you for your input.



    By Networking Issues I mean an availability of Dropbox server, I see it often may be busy with multiple

    users or simply unavailable at times for the incoming requests.



    Even when I use Dropbox for Android once in a while I have a network error or a very long delay.Nothing can be done about it.



    Notice that Dropbox syncing is incremental, so you can always try again later and

    no information will be lost, sync will continue from the last point.



    Corrupted file is probably not related to syncing,it may represent a compatibility issue, my keychain is created by 1P for Mac v 3.3.0

    and each and every .1password file have a keyID attribute.



    Something like this (below is one of my .1password files) :

    ====================================

    {"uuid":"42E1959248CE4179B01A57799637C1C0","updatedAt":1281537578,"locationKey":"","openContents":{"contentsHash":"7692693f","securityLevel":"SL3"},"keyID":"38424C63EF554B358A77A9C75155D50F","title":"Alpha Note!!! ","location":"","encrypted":"U2FsdGVkX1+c8p++MvYKBz4HO2g4yH8I7z0hFfjLZNT6WGtRBVfeo6p6RAakop9Z3x3r5E3qe4oBXdtQl7fzEQ==\u0000",

    "createdAt":1281453751,"typeName":"securenotes.SecureNote"}

    ====================================

    You can see "keyID": that is what I am always looking for.

    I am surprised that some of your items don't have it.



    Please forward me one or two files with .1password extension which failed to load and contents.js file from under the data/default on my support account android-support@agile.ws

    That will help to identity the issue. And also please let me know which version of 1Password you use (Mac/PC)



    Thank you in advance

    Regards,

    Gene
  • I was able to sync without any problem, but when the sync completes and I hit the "launch application" button I get the following error:



    Corrupted file:contents.js:

    =====INTERNAL ERROR:======

    com.onepassword.passwordmanager.support.PasswordManagerException: Corrupted file:contents.js:

    =====INTERNAL ERROR:======

    org.json.JSONException: JSONArray[7] not found.

    at org.json.JSONArray.get(JSONArray.java:173)

    at org.json.JSONArray.getString(JSONArray.java:295)

    at com.onepassword.passwordmanager.record.OnePasswordRecord.init(OnePasswordRecord.java:175)

    at com.onepassword.passwordmanager.support.RecordsManager.getOnePasswordRecord(RecordsManager.java:238)

    at com.onepassword.passwordmanager.support.RecordsManager.setDataList(RecordsManager.java:140)

    at com.onepassword.passwordmanager.support.RecordsManager.initDataList(RecordsManager.java:67)

    at com.onepassword.passwordmanager.activity.LoginActivity.initKeychainData(LoginActivity.java:335)

    at com.onepassword.passwordmanager.activity.LoginActivity.onCreate(LoginActivity.java:86)

    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)

    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2544)

    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)

    at android.app.ActivityThread.access$2200(ActivityThread.java:126)

    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1932)

    at android.os.Handler.dispatchMessage(Handler.java:99)

    at android.os.Looper.loop(Looper.java:123)

    at android.app.ActivityThread.main(ActivityThread.java:4595)

    at java.lang.reflect.Method.invokeNative(Native Method)

    at java.lang.reflect.Method.invoke(Method.java:521)

    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)

    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)

    at dalvik.system.NativeStart.main(Native Method)

    ============

    at com.onepassword.passwordmanager.support.RecordsManager.setDataList(RecordsManager.java:176)

    at com.onepassword.passwordmanager.support.RecordsManager.initDataList(RecordsManager.java:67)

    at com.onepassword.passwordmanager.activity.LoginActivity.initKeychainData(LoginActivity.java:335)

    at com.onepassword.passwordmanager.activity.LoginActivity.onCreate(LoginActivity.java:86)

    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)

    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2544)

    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)

    at android.app.ActivityThread.access$2200(ActivityThread.java:126)

    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1932)

    at android.os.Handler.dispatchMessage(Handler.java:99)

    at android.os.Looper.loop(Looper.java:123)

    at android.app.ActivityThread.main(ActivityThread.java:4595)

    at java.lang.reflect.Method.invokeNative(Native Method)

    at java.lang.reflect.Method.invoke(Method.java:521)

    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)

    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)

    at dalvik.system.NativeStart.main(Native Method)

    ============
  • Rebooted phone and was able to get the application to start.



    Two limitations I've noticed:

    1) Searching seems to be limited to the user-provided "name" of a login and doesn't search the domain. Either that or the search is not looking for the string in the middle of a domain. For example, searching for "aa" doesn't bring up my American Airlines login, because for some reason it's named "http://www.aa.com". I have to just know (in this case because I searched for it in 1Password for Mac) what the name is and search for "http" to get it to come up. I have hundreds of logins and rarely bother to manually name them, so this is a big limitation for me.

    2) The app locks itself when you switch to another app (e.g. the browser) but NOT when you lock the phone while you're still in 1Password. A preferred behavior might be to auto-lock the app when the phone locks, but to wait for a bit (60 seconds?) before locking when switching apps. In the latter case my example would be opening 1Password, copying the username, opening the website, pasting the username, going back to 1Password, copying the password, returning to the browser, and finally pasting the password.
  • GeneY
    GeneY AWS Team
    Hello everyone,



    Some customers reported an issue with Corrupted file:



    contents.js:

    =====INTERNAL ERROR:======

    com.onepassword.passwordmanager.support.PasswordManagerException: Corrupted file:contents.js:

    =====INTERNAL ERROR:======

    org.json.JSONException: JSONArray[7] not found.



    I just spoke with 1Password Chief Architect about this issue.



    Notice that your 1Password.agilekeychain file on Mac or Windows is corrupted or obsolete

    (the current version of 1P for Mac is 3.3.0), and should be rebuilt.



    Please launch 1Password for Mac application and rebuild your data file by using

    Help > Troubleshooting > Rebuild Data File option.



    When customers rebuilt their data files, the problem was magically solved.



    Please let me know if you need more information.



    Regards,

    Gene
  • GeneY
    GeneY AWS Team
    Hi frader ,



    Thank you for your feedback.



    I am glad you made Dropbox Sync working for you.



    Item Search looks for the beginning of the name for example http://www.google.com will be found if you search for http://www.g

    there is no wildcard search (for ex *google*), I will add this option in a future release.



    Lock Menu immediately launches dialog box and makes an application unavailable until correct password is provided.

    In addition, any time an application goes in the background, it is locked in order to prevent accessing your data by unauthorised users.



    Please let me know if you need more information.



    Best Regards,

    Gene