小编Kal*_*aju的帖子

将 gradle 依赖版本移动到变量的正确方法是什么?

为了维护我的 gradle 依赖项的版本号,我选择了以下模式。

在我的项目级别中,build.gradle我添加了:

ext.versions = [
            'kotlin_version'   : '1.2.30',
            'dagger'           : '2.16'
]
Run Code Online (Sandbox Code Playgroud)

在我的应用程序模块中,build.gradle我添加了:

implementation "com.google.dagger:dagger:${versions.dagger}"
implementation "com.google.dagger:dagger-android-support:${versions.dagger}"
implementation "com.google.dagger:dagger-android:${versions.dagger}"
kapt "com.google.dagger:dagger-compiler:${versions.dagger}"
kapt "com.google.dagger:dagger-android-processor:${versions.dagger}"
Run Code Online (Sandbox Code Playgroud)

但我的问题是在执行此操作后,我丢失了“可用的较新库版本”的 lint 警告。

在不丢失 lint 检查的情况下执行此操作的正确方法是什么?

注意:我还尝试了其他方法,例如将这些版本移动到 gradle.properties 文件(用于全局变量)。

我正在 Android Studio 中寻找解决方案。我已经找到了一种解决方案:

Analyze -> Run Inspection by name... -> Type "Newer Library Versions Available"

但我担心的是,在我们运行某些或其他脚本之前很容易错过更新。这就是为什么我试图找到一种方法,可以将依赖项版本放入变量中并获得新更新的 lint 警告

android gradle

7
推荐指数
1
解决办法
1122
查看次数

无法打开通过下载管理器api下载的文件

我在android中使用DownloadManager API成功下载了一个pdf文件.

正确设置清单权限.文件下载正确.

但当试图打开它时说"无法打开文件".

请帮忙打开下载的文件.我想我没有为文件设置正确的名称和扩展名.怎么设置呢?

private void DownloadBook(String url, String title){

    DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
    //request.setDescription("Some descrition");
    String tempTitle = title.replace(" ","_");
    request.setTitle(tempTitle);
    // in order for this if to run, you must use the android 3.2 to compile your app
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        request.allowScanningByMediaScanner();
        request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
    }
    request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, tempTitle+".pdf");

    // get download service and enqueue file
    DownloadManager manager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
    request.setMimeType(".pdf");
    request.allowScanningByMediaScanner();
    request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_MOBILE | DownloadManager.Request.NETWORK_WIFI);
    manager.enqueue(request);
}
Run Code Online (Sandbox Code Playgroud)

android android-webview android-download-manager

6
推荐指数
1
解决办法
2万
查看次数

片段转换不适用于jetpack导航框架

即使在设置了enter,exit,popEnter和popExit过渡后,转换也不起作用.

<fragment
    android:id="@+id/introFragment"
    android:name="IntroFragment"
    android:label="IntroFragment" >
    <action
        android:id="@+id/action_introFragment_to_signinFragment"
        app:destination="@id/signinFragment"
        app:enterAnim="@anim/slide_from_right"
        app:exitAnim="@anim/slide_to_left"
        app:popEnterAnim="@anim/slide_from_left"
        app:popExitAnim="@anim/slide_to_right"
        app:popUpTo="@+id/nav_graph" />
    <action
        android:id="@+id/action_introFragment_to_signupFragment"
        app:destination="@id/signupFragment"
        app:enterAnim="@anim/slide_from_right"
        app:exitAnim="@anim/slide_to_left"
        app:popEnterAnim="@anim/slide_from_left"
        app:popExitAnim="@anim/slide_to_right"
        app:popUpTo="@+id/nav_graph" />
</fragment>
Run Code Online (Sandbox Code Playgroud)

我在用

def nav_version = "1.0.0-alpha05"
// Navigation Component - Jetpack
implementation "android.arch.navigation:navigation-fragment-ktx:$nav_version"
implementation "android.arch.navigation:navigation-ui-ktx:$nav_version"
androidTestImplementation "android.arch.navigation:navigation-testing-ktx:$nav_version"
Run Code Online (Sandbox Code Playgroud)

我的导航代码是

button.setOnClickListener(
            Navigation.createNavigateOnClickListener(R.id.signinFragment))
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

android android-navigation android-jetpack

6
推荐指数
1
解决办法
991
查看次数

如何使用 Jetpack Compose 垂直旋转堆叠文本?

尝试对齐文本元素,如下图所示:

在此输入图像描述

如何在 Jetpack Compose 中做到这一点?

通常我会使用垂直方向的线性布局和带有rotation of 90. 想知道如何在撰写中实现这一目标。

android android-layout android-jetpack android-jetpack-compose

6
推荐指数
1
解决办法
4382
查看次数

循环视图与滚动视图内的线性布局?

我正在尝试创建一个带有可滚动列表的页面。功能将是一个普通列表,可通过单击删除项目。该列表中的项目数量受到用户的限制和动态添加。您可以考虑以待办事项列表为例。现在哪个是更好的实施方法?数据绑定到其适配器的回收器视图?或者在运行时添加为子项的正常线性布局?

我目前的实现是回收者视图。但是,我发现它滞后并且动画效果不佳。因此,线性布局是通过指定 xml 自动动画的——通过将动画布局更改设置为 true。

仅供参考的数据是本地的并在后台同步。

android android-layout

5
推荐指数
1
解决办法
2443
查看次数