Android成功构建Gradle,但未在模拟器上安装应用

时间:2018-08-29 00:08:57

标签: java android

我在使用Android体系结构组件时遇到了一些问题。我想做的是从视图模型中执行存储库类中的功能。这是我的视图模型:

private final ReservationRepository reservationRepository;
private final UserRepository userRepository;
private LiveData<List<ReservationEntity>> reservations;

@Inject
public ReservationViewModel(ReservationRepository reservationRepository, UserRepository userRepository) {
    this.reservationRepository = reservationRepository;
    this.userRepository = userRepository;
    reservations = reservationRepository.loadReservations();
}

public LiveData<List<ReservationEntity>> getAllReservations() {
    return reservations;
}

然后在我的存储库类中:

private final ReservationDao reservationDao;

@Inject
public ReservationRepository(ReservationDao reservationDao) {
    this.reservationDao = reservationDao;
}

public LiveData<List<ReservationEntity>> loadReservations() {
    return reservationDao.getAllReservation();
}

在我的DAO课上:

@Query("SELECT * FROM reservation")
LiveData<List<ReservationEntity>> getAllReservation();

我有一个AppModule来@提供@Inject:

@Provides
@Singleton
ReservationDatabase provideReservationDatabase(Application application) {
    return Room.databaseBuilder(application,ReservationDatabase.class,
            ReservationDatabase.DATABASE_NAME).allowMainThreadQueries().build();
}

@Provides
@Singleton
ReservationDao provideReservationDao(ReservationDatabase reservationDatabase) {
    return reservationDatabase.reservationDao();
}

我设法成功建立了项目。但是,在成功构建gradle之后,它不会将应用程序安装到模拟器上。有什么想法吗?

谢谢!

3 个答案:

答案 0 :(得分:7)

就我而言,Gradle Sync 解决了这个问题。

答案 1 :(得分:0)

1。在Android Studio中,转到“构建”>“构建APK” 然后在以下位置找到您的应用的apk文件 [项目位置] \ app \ build \ outputs \ apk \ debug

2。打开PC的命令提示符或终端(对于MAC),然后键入 cd C:\ Users [用户名] \ AppData \ Local \ Android \ Sdk \ platform-tools

如果安装的SDK的位置不同,则可能会有所不同。

3。然后将生成的apk复制粘贴到步骤2中的位置。

  1. 然后运行adb install [生成的apk名称]

这应该在您的模拟器中安装apk。只需确保没有其他设备连接,并且除了要安装的设备之外,没有其他仿真器正在运行。

答案 2 :(得分:0)

您可以执行以下操作来解决您的问题

  • 您可以关闭即时运行。

    文件>设置>构建,执行,部署>即时运行>取消选中即时运行。

然后尝试再次在模拟器上运行您的应用。

  • 重新启动Android Studio

    文件->使缓存无效/重新启动

  • 执行清理构建

    Build-> Clean Project

  • 尝试同步您的项目

    文件->同步项目

  • 确保项目位置不包含特殊字符。

    E:\ Android_Projects \ T&PUIET,KUK \ app \ build \ outputs \ apk \ app-debug.apk

    关闭android studio>重命名包含特殊字符的文件夹(此处为T&PUIET,KUK)>重新启动android studio。

希望此解决方案有帮助!