我收到错误消息“应用了 Hilt Android Gradle 插件,但未com.google.dagger:hilt-android-compiler
找到任何依赖项。” 在构建项目时。
这是我如何将刀柄添加到我的项目中。
我已将 Macbook 上的 android studio 从arctic fox
至最新版本更新bumblebee 2021.1.1
。我正在使用探查器,无法进行网络分析,因为它显示Network Profiler has moved
以及它下面显示的To inspect network activity. Use the Network Inspector
。当我点击突出显示的部分时,Network Inspector
它会将我移动到App Inspection
没有显示任何内容的部分。
这就是我点击时得到的Network Inspector
PagedList<Object>
用于Android的酷分页库.要使问题尽可能小:如果我有一个字符串列表,如
List<String> stringList; // it consists of 200 strings
Run Code Online (Sandbox Code Playgroud)
我想转换 stringList
为PagedList<String>
类似的类型
PagedList<String> pagedStringList;
Run Code Online (Sandbox Code Playgroud)
而且,如果我有一个PagedList<Object>
如何将其转换为List<Object>
?我经历了这个以供参考
如果我尝试相反的方式....
我怎么能转换List<Object>
成DataSource.Factory<Integer, Object>
..所以间接我可以把它转换成PagedList<>
?
从
DataSource.Factory<Integer, Object>
我可以转换为PagedList<>
但我怎么能转换list
成PagedList<>
?
android rx-java2 android-livedata android-architecture-components android-jetpack
我在我的应用程序中使用 Exoplayer 并将 exoplayer 初始化为
player = SimpleExoPlayer.Builder(this).build()
Run Code Online (Sandbox Code Playgroud)
但 Android Studio 向我发出警告,因为它已被弃用。当我使用较低版本的 Exoplayer 时2.15.1
,警告就会响起。但在最新版本中2.16.0
,它给出了弃用警告。现在我们如何使用最新版本初始化exoplayer?
我正在参加 MDC101 颤振代码实验室。我按照说明从 git 存储库克隆了启动项目,但是在克隆完成后,我执行了flutter pub get
它,但它给了我以下错误。
pubspec.yaml has no lower-bound SDK constraint.
You should edit pubspec.yaml to contain an SDK constraint:
environment:
sdk: '>=2.10.0 <3.0.0'
Run Code Online (Sandbox Code Playgroud) 根据 Hilt 的文档,我完成了所有步骤
将类路径添加到项目模块
classpath "com.google.dagger:hilt-android-gradle-plugin:$hilt_version"
Run Code Online (Sandbox Code Playgroud)
添加插件
plugins {
id "kotlin-kapt"
id("dagger.hilt.android.plugin")
}
Run Code Online (Sandbox Code Playgroud)
添加依赖项
dependencies {
implementation("com.google.dagger:hilt-android:$hilt_version")
kapt("com.google.dagger:hilt-android-compiler:$hilt_version")
}
Run Code Online (Sandbox Code Playgroud)
带注释的应用程序类,在我的例子中为 AppClass,带有@HiltAndroidApp
. 带注释的 Activity 和有关片段@AndroidEntryPoint
。
创建模块为
@InstallIn(AppClass::class)
@Module
object DatabaseModule {
@Provides
@Singleton
fun provideAppDB(application: Application): AppDB {
return AppDB.getDatabase(application)
}
@Provides
@Singleton
fun provideMediaDao(appDB: AppDB): MediaDao {
return appDB.downloadMediaDao()
}
}
Run Code Online (Sandbox Code Playgroud)
将其注入 ViewModel 类中
@HiltViewModel
class DownloadViewModel @Inject constructor(
private val mediaDao: MediaDao
): ViewModel() {
...
}
Run Code Online (Sandbox Code Playgroud)
但是在完成所有步骤之后,我收到错误消息“@InstallIn,只能与@DefineComponent注释的类一起使用,但发现:[com.abc.xyz.AppClass]”
我已经在我的 Activity 上实现了 GestureDetector.OnGestureListener 接口。它在 Android API 32 上运行良好,但在将 Android API 级别从 32 更新到 33 后,我无法覆盖它的方法。当我回滚到 Android API 32 时,它工作正常。
这是我实现该接口的方式:
class ABCActivity: AppCompatActivity(), GestureDetector.OnGestureListener {
override fun onDown(p0: MotionEvent?): Boolean = false
override fun onShowPress(p0: MotionEvent?) = Unit
override fun onSingleTapUp(p0: MotionEvent?): Boolean = false
override fun onLongPress(p0: MotionEvent?) = Unit
override fun onFling(p0: MotionEvent?, p1: MotionEvent?, p2: Float, p3: Float): Boolean = false
override fun onScroll(
event: MotionEvent?,
event1: MotionEvent?,
distanceX: Float,
distanceY: Float
): Boolean {
// …
Run Code Online (Sandbox Code Playgroud) 我在用着TextInputLayout
。我设置了它的提示来string.xml
应用本地化。因此,从下拉列表中更改语言后,我使用recreate()
使用所选语言资源刷新整个活动组件的方法,但TextInputLayout
提示没有刷新。
我正在研究某人的 Flutter 代码,并且在单个 dart screen 文件上有很多方法。他们从后端 API 加载数据并且花费的时间太长。因此,我想计算每个异步方法的执行时间,以便优化代码以获得更好的性能。
我在调用时收到此异常MediaStore.createWriteRequest(contentResolver, uris)
。与 Anrdroid Q 及以上版本一样,我们必须使用 createWriteRequest 来写入存储。所以我正在尝试以下代码并得到异常。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
List<Uri> uris = new ArrayList<>();
uris.add(mediaUri);
MediaStore.createWriteRequest(contentResolver, uris);
//code
}
Run Code Online (Sandbox Code Playgroud) android ×9
kotlin ×4
dagger-hilt ×2
flutter ×2
android-10.0 ×1
android-11 ×1
android-13 ×1
android-architecture-components ×1
androidx ×1
async-await ×1
dart ×1
exoplayer ×1
exoplayer2.x ×1
flutter-pub ×1
flutter-web ×1
future ×1
gradle ×1
java ×1
lower-bound ×1
mediastore ×1
mvvm ×1
profiling ×1
recreate ×1
rx-java2 ×1
sdk ×1
storage ×1
viewmodel ×1