Вопрос

Мне нужно надежно хранить частные пользовательские данные, чтобы она мог сохраняться по запуску моего приложения, а также сбрасывает устройство.

Это будет строка, которую я думаю около 1000 символов.

Мне сказали, что я могу использовать api keystore keystore для этого.

Что ж, я провел часы погугулировал любое черда на использовании api api api api aphstore. Образцы JDE не содержат ничего полезного на этом.

Похоже, это редкая вещь в разработке BB, поэтому на этом практически нет официальной информации.

Я читаю это а также это. Отказ От тех, кого я понял лучший выбор для меня - использовать PersistablerImkeyStore (он сохраняется через сбрасывание устройства). Однако я не могу выяснить, что именно должна быть реализация.

Может кто-нибудь помочь с примером кода или указать мне на некоторое руководство? Также, может быть, есть лучший / прощий путь / подход для моей задачи, поэтому, пожалуйста, дайте мне знать об этом.

Заранее большое спасибо!!!

Это было полезно?

Решение

Персистаблаймкеистор используется для сохранения магазина Key Key. Чтобы сохранить пользовательские данные Accross сбрасываются вам, вам нужно использовать только персистентное положение, если вы хотите, чтобы Deta была защищена, вы можете использовать ContentProtectedhashtable или ContentProtectedVector.

Другие советы

Если вы используете магазин в том же же, было как «персистеремо», которое, если вы не знаете, вы можете получить, перейдя в файл -> Импорт -> Образцы BlackBerry, вы можете зашифровать информацию в магазине. Кроме того, если у пользователя есть защита контента, вы можете использовать ContentProtectedhashtable, чтобы автоматически узнать, что эта информация будет зашифрована. Итак, без защиты контента, информация будет зашифрована после того, как она будет зашифрована, это будет вдвойне шифровано, а также вдвойне зашифровано, а также с трудом угадать длинные хэш пространства имен App (очевидно, поскольку для регистрации магазина вам нужно). Ниже я использую:

package ca.dftr.phillyd.lib.persistables;

import net.rim.device.api.system.ApplicationDescriptor;
import net.rim.device.api.util.ContentProtectedHashtable;
import net.rim.device.api.util.Persistable;

/**
 * Basic class for storing application specific information. 
 * Information such as application settings or whether the license agreement was accepted.
 * For more complex and specific classes they should be implemented separately and implement persistable 
 * @author deforbes
 */
public class AppInfo extends ContentProtectedHashtable  implements Persistable {

    private String _appName = null;
    private String _version = null;

    /**
     * Constructs the application info, creates and persists a hashtable for application settings.
     * @param uniqueHexAppIdentifier Can be automatically created in resource class (BUNDLE_ID) or generated using other unique information.
     */
    public AppInfo() {    
        ApplicationDescriptor appDesc = ApplicationDescriptor.currentApplicationDescriptor();
        _appName = appDesc.getName();
        _version = appDesc.getVersion();
    }

    /**
     * Get the Name of the application
     * @return The application name from the app descriptor
     */
    public String getName()
    {
        return _appName;
    }

    /**
     * Get the Version of the application
     * @return The application version from the app descriptor
     */
    public String getVersion()
    {
        return _version;
    }
}

Наряду с классом констант (которые могут быть включены в вышеизложенное, если хотите). Например, из моего приложения Phillyd:

пакет ca.dftr.phillyd.lib.persistables;

/**
 * Keys for the AppInfo array
 * @author deforbes
 */
public class AppInfoKeys {
    public static final String QUALITY = "Quality";
    public static final String CHANNEL = "Channel";
    public static final String CHANNEL_NAME = "Channel_Name";
    public static final String SEARCH = "Search";
    public static final String LICENSE_ACCEPTED = "isLicenseAccepted";
    public static final String VIDEOS_PER_PAGE = "NumPerPage";
    public static final Boolean DOWNLOAD_THUMBS = new Boolean(true);
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top