0

Я попытался использовать модуль SQLite Database Encryption Module, который я загрузил с платформы Appcelerator, которая доступна только для профессионального места.Не удалось найти модуль сплав/sync/enc.db при использовании модуля шифрования базы данных SQLite

Я добавил это в моей модели

try { 
    require('appcelerator.encrypteddatabase'); 
    var dbType = "enc.db"; 
} catch(e) { 
    var dbType = "sql"; 
} 

И адаптер

adapter : { 
      type : dbType, 
      collection_name : "somename", 
      idAttribute : "someid", 
      migration : "20161105200100" 
     } 

При запуске проекта я получаю эту ошибку, как нет enc.db типа для адаптера.

Любой, имеющий аналогичную проблему при использовании этого модуля?

EDIT:

Titanium SDK версии: версия 5.5.1.GA Модуль: 1.3.3

Проверено на: iPhone 5s, версия 10.2.1 симулятор iphone 7 плюс, версия 10.1

ответ

0

Для использования платформы зашифрованного модуля я использую:

В alloy.js

// Use encrypteddatabase if the module is included, else use sql. 
try { 
    require('appcelerator.encrypteddatabase'); 
    Alloy.Globals.dbEncrypted = 'enc.db'; 
} catch (e) { 
    console.error('appcelerator.encrypteddatabase module is not available', e); 
} 
Alloy.Globals.dbType = 'sql'; 

В models/myModel.js

var dbType = Alloy.Globals.dbEncrypted || Alloy.Globals.dbType || 'sql'; 

... 

config: { 
    columns: { 
     id: 'TEXT PRIMARY KEY', 
     firstName: 'TEXT', 
     lastName: 'TEXT' 
    }, 
    adapter: { 
     type: dbType, 
     collection_name: 'myModel', 
     idAttribute: 'id', 
     db_name: 'myModel.' + dbType 
    } 
} 

The db_name генерируется специально для этой модели в моем случае (так как у меня есть сочетание зашифрованных и незашифрованных баз данных, но вы можете также использовать что-то вроде db_name: 'myModel'

Ti SDK Version 5.2.2.GA и версия модуля 1.1.4

Все работает отлично на моем конце.

 Смежные вопросы

  • Нет связанных вопросов^_^