小编Xav*_*ana的帖子

Gradle插件3.0.0 beta 4:"buildTypeMatching已被删除.使用buildTypes.<name> .fallbacks"

更新到Gradle插件3.0.0 beta 4后,我们的构建失败并显示以下消息:

buildTypeMatching已被删除.使用buildTypes.<name> .fallbacks

我们的库有releasedebug buildTypes,但我们的应用程序还有两个附加buildType的:'releaseWithLogs'和'debugMinified'.

我们的应用程序 Gradle文件的片段:

android {
    // ...
    buildTypeMatching 'releaseWithLogs', 'release'
    buildTypeMatching 'debugMinified', 'debug'

    buildTypes {
        debug {
            // ...
        }
        debugMinified {
            // ...
        }
        release {
            // ...
        }
        releaseWithLogs {
            // ...
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

android android-gradle-plugin android-build-type

10
推荐指数
1
解决办法
5005
查看次数

RecyclerView 滚动到顶部,AsyncListDiffer 不起作用

我正在使用RecyclerViewwith AsyncListDiffer(计算和动画旧项目和新项目之间的差异,全部在后台线程上)。

我有一个按钮可以对列表进行排序。在我对其进行排序并将其重新设置为RecyclerView使用后,mDiffer.submitList(items);我还调用了recyclerView.scrollToPosition(0)或 ( smoothScrollToPosition(0)),但它没有任何效果。

我认为这种行为是意料之中的,因为AsyncListDifferscrollToPosition(0)调用时可能仍在计算差异,因此它没有任何影响。此外,默认情况下AsyncListDiffer不会滚动回顶部,而是将 RecyclerView 保持在相同的状态。

但是如何RecyclerViewAsyncListDiffer完成后告诉滚动到顶部并更新它?

android android-recyclerview android-asynclistdiffer android-diffutils

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

在 AndroidManifest.xml 中添加 android:extractNativeLibs 后安装应用程序时出错

我用 NDK 开发了 Android 应用程序。我更新了 Android Studio cur.ver。2.2.2 运行应用程序。应用程序已安装在设备中。但是现在它没有在 Marshmallow 设备中更新,否则工作正常。在运行控制台中出现以下错误。当android:extractNativeLibs="false"在AndroidManifest.xml中。如果android:extractNativeLibs="true"然后应用程序正在设备中更新。

$ adb shell pm install -r "/data/local/tmp/"
pkg:/data/local/tmp/ 失败 [INSTALL_FAILED_INVALID_APK]

为什么会发生这种情况?谁能给我解释一下?

android android-ndk android-manifest android-studio android-6.0-marshmallow

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

android.permission.INTERNET 自 API 28 以来是否再次需要?

在尝试将 admob 和 api 级别更新为 API 28 后,我收到了以下 Lint 警告:

Missing permissions required by MobileAds.initialize: android.permission.INTERNET
Run Code Online (Sandbox Code Playgroud)

调用这些函数时:

MobileAds.initialize(context, context.getString(R.string.app_id));
mInterstitialAd.loadAd(new AdRequest.Builder().build());
Run Code Online (Sandbox Code Playgroud)

这怎么可能?

我记得android.permission.INTERNET很多年前就不需要了。应用程序无需使用该权限即可访问 Internet。即使在这个应用程序中,我也有一些 Internet 连接并且它们运行成功。我正在检索数据并且它正在工作,甚至还在显示广告。所有这些都未经清单上声明的许可。

为什么 Lint 会显示该警告?

android admob android-permissions android-9.0-pie

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