AndroidAnnotations 3.3.2'den 4.0.0 sürümüne yükseltmeye çalışıyorum ve ORMLite'in yükseltmeden sonra çalışmaya başlamasında sorun yaşıyorum. Ben 4.0.0 yükseltme ve şu hata mesajını alıyorum projeyi inşa sonra : "hata: sembol sınıf OrmLiteDao bulamıyorum" Ve bu kod parçası kırmızıyla işaretlenmiş:AndroidAnnotations nasıl ayarlanır? Android için 3.x uyumlu ORMLite koduAyrıntılar 4.0.0
@OrmLiteDao(helper = DatabaseHelper.class)
ContactDao mContactDao;
Eski sınıf (es) AndroidAnnotations 3.3.2 ile mükemmel çalıştığını şöyle görünür:
public class ContactService {
private final String TAG = getClass().getSimpleName();
@RootContext
Context ctx;
@OrmLiteDao(helper = DatabaseHelper.class)
ContactDao mContactDao;
public Contact getContact(Integer contactId) throws ItemNotFoundException, SQLException {
Contact contact = mContactDao.queryForId(contactId);
if (contact == null) {
Log.e(TAG, "Contact not found in database");
throw new ItemNotFoundException();
}
return contact;
}
public List<Contact> getContacts() throws ItemNotFoundException, SQLException {
List<Contact> contact = mContactDao.queryForAll();
if (contact == null) {
Log.e(TAG, "Contacts not found in database");
throw new ItemNotFoundException();
}
return contact;
}
public Contact createContact(Contact contact) throws SQLException {
try {
mContactDao.create(contact);
} catch (SQLException e) {
Log.e(TAG, e.getLocalizedMessage());
}
Log.d(TAG, "New Contact ID: " + contact.getId());
return contact;
}
}
Ve ben tüm ContactService sınıfında yöntemleri var çünkü benim ContactDao sınıf nispeten boş:
AndroidAnnotations Wiki göre(https://github.com/excilys/androidannotations/wiki/Ormlite) Bu kodu değiştirmek zorunda: Ben sırayla yeni biçimde (aşağıda) yukarıda kodumu ayarlamak için ne bana net değil
@EActivity
public class MyActivity extends Activity {
@OrmLiteDao(helper = DatabaseHelper.class)
void setUserDao(UserDao userDao){
// do something with userDao
}
}
AndroidAnnotations 4.0.0 ile çalışmasını sağlamak için. Kimse AndroidAnnotations 4.0.0 ile uyumlu olması için kodumu nasıl ayarlamam gerektiğini gösterebilir mi?
Teşekkür ederiz.
'@ OrmLiteDao 'ormlite eklentisinin bir parçası olduğundan (bağlandığınız wiki sayfasında açıklandığı gibi), eklentiyi bağımlılık olarak eklediniz mi? Yani, 'build.gradle' 'org.androidannotations: ormlite: 4.0.0' 'derlediniz mi? 3.3.2 sürümünde, ek açıklama hala ana api'nin bir parçasıydı, ancak proje o zamandan beri daha modüler bir yaklaşım benimsedi. –