Pytania otagowane jako android-room

W przypadku pytań związanych z biblioteką trwałości pomieszczeń w systemie Android (która jest częścią składników architektury systemu Android)

7
Pokój - katalog eksportu schematu nie jest dostarczany do procesora adnotacji, więc nie możemy eksportować schematu
Korzystam z pokoju z komponentami bazy danych Androida Skonfigurowałem wszystko, ale podczas kompilacji Android Studio wyświetla mi to ostrzeżenie: Katalog eksportu schematu nie jest dostarczany do procesora adnotacji, więc nie możemy eksportować schematu. Możesz podać room.schemaLocationargument procesora adnotacji LUB ustawić wartość exportSchema na false. Rozumiem, że jest to lokalizacja, w …



7
Android Room - Uzyskaj identyfikator nowego wstawionego wiersza z automatycznym generowaniem
W ten sposób wstawiam dane do bazy danych za pomocą biblioteki trwałości pomieszczeń: Jednostka: @Entity class User { @PrimaryKey(autoGenerate = true) public int id; //... } Obiekt dostępu do danych: @Dao public interface UserDao{ @Insert(onConflict = IGNORE) void insertUser(User user); //... } Czy można zwrócić identyfikator użytkownika po zakończeniu wstawiania …

12
Jak pozbyć się ostrzeżenia o żądaniu przyrostowego przetwarzania adnotacji?
Właśnie zacząłem używać programowania na Androida i próbować korzystać z biblioteki Room. Od wczoraj mam do czynienia z tym ostrzeżeniem w: [kapt] Zażądano przyrostowego przetwarzania adnotacji, ale obsługa jest wyłączona, ponieważ następujące procesory nie są przyrostowe: androidx.lifecycle.LifecycleProcessor (NON_INCREMENTAL), androidx.room.RoomProcessor (NON_INCREMENTAL). Próbowałem zbadać i naprawić, ale nie mogę uniknąć tego błędu. …

20
Trwały pokój z systemem Android: AppDatabase_Impl nie istnieje
Moja klasa bazy danych aplikacji @Database(entities = {Detail.class}, version = Constant.DATABASE_VERSION) public abstract class AppDatabase extends RoomDatabase { private static AppDatabase INSTANCE; public abstract FavoritesDao favoritesDao(); public static AppDatabase getAppDatabase(Context context) { if (INSTANCE == null) { INSTANCE = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, Constant.DATABASE).allowMainThreadQueries().build(); //Room.inMemoryDatabaseBuilder(context.getApplicationContext(),AppDatabase.class).allowMainThreadQueries().build(); } return INSTANCE; } public static void …

19
Android Room - proste zapytanie wybierające - Nie można uzyskać dostępu do bazy danych w głównym wątku
Próbuję próbki z Room Persistence Library . Utworzyłem jednostkę: @Entity public class Agent { @PrimaryKey public String guid; public String name; public String email; public String password; public String phone; public String licence; } Utworzono klasę DAO: @Dao public interface AgentDao { @Query("SELECT COUNT(*) FROM Agent where email = :email …

6
Zaktualizuj określone pole elementu w pokoju Android
W moim nowym projekcie używam biblioteki trwałości pokoju systemu Android. Chcę zaktualizować niektóre pola tabeli. Próbowałem jak w moim Dao- // Method 1: @Dao public interface TourDao { @Update int updateTour(Tour tour); } Ale kiedy próbuję zaktualizować za pomocą tej metody, aktualizuje ona każde pole jednostki, w której pasuje do …

6
Migracja bazy danych pokoju, jeśli dodana jest tylko nowa tabela
Nie zakładajmy, że mam prostą bazę danych Pokoju: @Database(entities = {User.class}, version = 1) abstract class AppDatabase extends RoomDatabase { public abstract Dao getDao(); } Teraz dodaję nową jednostkę: Peti wbijam wersję na 2: @Database(entities = {User.class, Pet.class}, version = 2) abstract class AppDatabase extends RoomDatabase { public abstract Dao …

3
Android Room - Wybierz zapytanie z LIKE
Próbuję wykonać zapytanie, aby przeszukać wszystkie obiekty, których nazwy zawierają tekst: @Query("SELECT * FROM hamster WHERE name LIKE %:arg0%") fun loadHamsters(search: String?): Flowable<List<Hamster>> Wiadomości: Error:no viable alternative at input 'SELECT * FROM hamster WHERE name LIKE %' Error:There is a problem with the query: [SQLITE_ERROR] SQL error or missing database …

9
Biblioteka trwałości pomieszczeń Androida: Upsert
Biblioteka trwałości Room systemu Android łaskawie zawiera adnotacje @Insert i @Update, które działają dla obiektów lub kolekcji. Mam jednak przypadek użycia (powiadomienia push zawierające model), który wymagałby przesłania UPSERT, ponieważ dane mogą, ale nie muszą istnieć w bazie danych. Sqlite nie ma natywnego upsert, a obejścia są opisane w tym …


5
Jak zaktualizować dane LiveData ViewModel z usługi w tle i zaktualizować interfejs użytkownika
Ostatnio odkrywam architekturę Androida, która została niedawno wprowadzona przez Google. Z dokumentacji znalazłem to: public class MyViewModel extends ViewModel { private MutableLiveData<List<User>> users; public LiveData<List<User>> getUsers() { if (users == null) { users = new MutableLiveData<List<Users>>(); loadUsers(); } return users; } private void loadUsers() { // do async operation to …

20
Pokój nie może zweryfikować integralności danych
Otrzymuję ten błąd podczas uruchamiania programu z bazą danych pomieszczeń Room cannot verify the data integrity. Looks like you've changed schema but forgot to update the version number. You can simply fix this by increasing the version number. Wygląda na to, że musimy zaktualizować wersję bazy danych, ale skąd możemy …

18
Baza danych pokojów Android: jak obsłużyć Arraylist w encji?
Właśnie wdrożyłem Room do zapisywania danych offline. Ale w klasie Entity pojawia się następujący błąd: Error:(27, 30) error: Cannot figure out how to save this field into database. You can consider adding a type converter for it. A klasa jest następująca: @Entity(tableName = "firstPageData") public class MainActivityData { @PrimaryKey private …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.