小编Gus*_*avo的帖子

仅针对我的项目的Android Lint报告,不包括库项目?

如何运行Android Lint以便它只报告我的项目模块,并忽略我正在使用的任何库项目?即使我将Lint瞄准我的项目模块,它也会在库项目中列出我不感兴趣的问题列表 - 我想集中精力修复我自己代码中的问题.

我看不到一个参数来指定它是否跟随对库项目的引用,但也许你可以看到如何做到这一点.

android android-lint

24
推荐指数
2
解决办法
4591
查看次数

如何使用adjustPan保持工具栏可见?

我有一个类似下面的布局,当用户点击EditText时,我想有以下行为:

  1. 键盘应覆盖"LinearLayout与底部对齐";
  2. EditText应该在屏幕上可见,而不是由键盘覆盖;
  3. 工具栏应在屏幕上可见;

我的布局

在此输入图像描述

预期的行为

在此输入图像描述

windowSoftInputMode = adjustPan的实际结果

要求未达到:

  1. 工具栏应在屏幕上可见;

在此输入图像描述

windowSoftInputMode = adjustResize的实际结果

要求未达到:

  1. 键盘应覆盖"LinearLayout与底部对齐";

在此输入图像描述

windowSoftInputMode = adjustNothing的实际结果

要求未达到:

  1. EditText应该在屏幕上可见,而不是由键盘覆盖;

在此输入图像描述

有没有人遇到同样的问题并达到了要求?

keyboard layout android android-toolbar

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

本机库sqljdbc_auth.dll已经加载到另一个类加载器中

我有2个Java Web应用程序需要使用Windows集成身份验证连接到SQL Server数据库.

加载的第一个工作正常,但第二个抛出异常:

Native Library sqljdbc_auth.dll already loaded in another classloader
Run Code Online (Sandbox Code Playgroud)

当我将sqljdbc_auth.dll放在其中一个文件夹中时,会出现上述错误:

  • C:\ WINDOWS\SYSTEM32 \
  • C:\ Program Files\Apache Software Foundation\Tomcat 7.0\bin \

如果我将sqljdbc_auth.dll放在下面的一个文件夹中:

  • 每个Web应用程序的/ WEB-INF/lib目录
  • C:\ Program Files\Apache Software Foundation\Tomcat 7.0\lib \

两个应用程序抛出异常:

Failed to load the sqljdbc_auth.dll cause :- no sqljdbc_auth in java.library.path
Run Code Online (Sandbox Code Playgroud)

我正在使用此代码加载驱动程序:

Class.forName("jdbc:sqlserver://<HOST>;databaseName=<DBNAME>;integratedSecurity=true;");
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

java sql-server tomcat jdbc windows-authentication

20
推荐指数
1
解决办法
3万
查看次数

完全从Android应用程序中删除firebase分析

我在我的应用程序中添加了firebase分析,以便尝试一下.我按照官方指南中的步骤进行操作.

现在我决定反对它.我已经撤消了我做的任何事情来添加它.(从项目级别和应用程序级别build.gradle中删除了条目;从源代码中删除了所有用法.)

但我仍然得到像日志

I/FirebaseInitProvider: FirebaseApp initialization successful
Run Code Online (Sandbox Code Playgroud)

当我的应用运行时.

这让我相信我没有完全删除它.这真的是我现在关注的问题,因为我的应用程序超出了方法计数限制,我不得不启用multidex.

如何从我的应用程序中完全删除firebase?

android firebase firebase-analytics

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

使用 Gradle 任务运行单元测试时出现 NoClassDefFoundError

我有一个使用动态功能模块的项目,我想通过 gradle 任务(用于我的 CI 目的)在功能模块中运行我的单元测试:

./gradlew :feature_product:test
Run Code Online (Sandbox Code Playgroud)

但它总是为我NoClassDefFoundError提供依赖于基本模块类的测试:

com.example.android.feature.product.ProductViewTest > on vote change to negative FAILED
java.lang.NoClassDefFoundError: app.BaseView
Run Code Online (Sandbox Code Playgroud)

ProductView功能模块中的类从BaseView基础模块扩展而来。

奇怪的是,它在 Android Studio 中运行时成功了,它运行良好。

安卓工作室

然后,当我通过命令行运行和运行 Android Studio 时,我注意到日志中有一些不同的东西。Android Studio 中的第一行是generateDebugSources我运行时不存在的内容./gradlew test

Executing tasks: [:lib_ui:generateDebugSources, ...]
Run Code Online (Sandbox Code Playgroud)

我该如何解决?./gradlew test当我按 Ctrl+Shift+R 时,Android Studio 是否有与提供的命令不同的命令?

junit android unit-testing gradle android-studio

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

golang中动态调整大小的数组?

我想知道是否有任何方法可以创建动态大小的数组以避免下面代码中的运行时错误。

错误:

恐慌:运行时错误:Go 中索引超出范围

代码:

/**
 * Definition for singly-linked list.
 * type ListNode struct {
 *     Val int
 *     Next *ListNode
 * }
 */
func nextLargerNodes(head *ListNode) []int {

    var a []int
    var pha int
    hNum := 0
    currNode := head
    pha = 0
    for currNode.Next != nil {
        iter := currNode.Next
        hNum = currNode.Val
        //phb = pha + 1
        for(iter.Next != nil){
            if hNum < iter.Val {
                hNum = iter.Val
                break
            } else if hNum == iter.Val{
                hNum …
Run Code Online (Sandbox Code Playgroud)

go

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

Android应用图片的优化尺寸和dpi

我的应用程序有一个背景图像,我想创建它的不同文件,以支持多屏幕.

我发送了这个链接(http://developer.android.com/guide/practices/screens_support.html)给图形设计师,但他问我想用图像创建的像素尺寸.

考虑到我的团队中有一个图形设计师,我不想使用代码来优化内存中加载的图像(我只想将图像放在正确的文件夹中,用于小型,普通,大型和超大屏幕),什么是最优化的大小和dpi设置来生成它?

我们正在使用PNG文件.

对于dpi,我们遵循以下内容:

  • ldpi用于低密度(ldpi)屏幕的资源(~120dpi).
  • mdpi用于中密度(mdpi)屏幕的资源(~160dpi).(这是基线密度.)
  • hdpi用于高密度(hdpi)屏幕的资源(~240dpi).
  • xhdpi用于超高密度(xhdpi)屏幕(~320dpi)的资源.

但对于维度,我只能找到这个,这是在dp而不是在px中:

  • xlarge屏幕至少为960dp x 720dp
  • 大屏幕至少640dp x 480dp
  • 正常屏幕至少为470dp x 320dp
  • 小屏幕至少为426dp x 320dp

memory android image drawable

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

DisposableObserver与(常规)观察者

从我在源代码中看到的,在实现方面的区别在于DisposableObserver实现Disposable接口。

在内部dispose,它调用一个自动处理的助手函数。

@Override
public final void dispose() {
    DisposableHelper.dispose(s);
}
Run Code Online (Sandbox Code Playgroud)

但实际上,两者之间有什么区别。不再需要不再收集常规可观察的垃圾了吗?

使用DisposableObserverover 的默认用例是Observer什么?

java rx-java

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

SwipeRefreshLayout 和 TabLayout 问题

我有一个简单的项目,在 MainActivity 中有一个 TabLayout,有 3 个选项卡,每个选项卡都有一个 SwipeRefreshLayout。

如果我拉动以刷新第一个选项卡,然后在第一个选项卡仍在刷新时移动到第三个选项卡,当我返回第一个选项卡时,看起来第一个选项卡上有一个视图,其中包含状态的快照在我移动到第三个选项卡之前的选项卡。我可以滚动项目并正常使用选项卡。

请看下面的图片和我的代码。

我可以关闭“刷新指示器”调用 swipeLayout.setRefreshing(false); 在 ContentFragment 的 onPause 中,但覆盖视图保持在那里。

初始画面

初始画面

屏幕显示问题

屏幕显示问题

主要活动

public class MainActivity extends AppCompatActivity {

    ViewPager viewPager;
    TabLayout tabLayout;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        viewPager = (ViewPager) findViewById(R.id.viewpager);
        tabLayout = (TabLayout) findViewById(R.id.tablayout);

        PagerAdapter pageAdapter = new PagerAdapter(getSupportFragmentManager());
        viewPager.setAdapter(pageAdapter);

        tabLayout.setupWithViewPager(viewPager);
    }

    static class PagerAdapter extends FragmentPagerAdapter {

        private final int TAB_COUNT = 3;

        public PagerAdapter(FragmentManager fm) {
            super(fm);
        }

        @Override
        public Fragment getItem(int position) {
            return new ContentFragment(); …
Run Code Online (Sandbox Code Playgroud)

android swiperefreshlayout android-tablayout

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

如何仅从主页中的WebViewClient的新onReceivedError中检测错误

语境

在Android SDK中23 onReceivedError(WebView view, int errorCode, String description, String failingUrl)已被弃用并替换为onReceivedError(WebView view, WebResourceRequest request, WebResourceError error)。但是根据文档

请注意,与弃用的回调版本不同,新版本将针对任何资源(iframe,图片等)调用,而不仅仅是主页

问题

我们有一个应用程序,在不赞成使用的onReceivedError方法中,有一个代码可以显示本机视图,而不是让用户在WebView中看到错误。

我们想onReceivedError用新方法代替不推荐使用的方法。但是我们不想在本机视图中显示任何资源的错误,而只显示主页。

我们如何在新onReceivedError的页面中识别出错误不是来自主页?

PS 1:我们宁愿没有像解决这个存储主网址,并检查它,失败的URL。

PS 2:如果解决方案是仅使用不推荐使用的方法,那么对于新的Android版本仍可以保证调用该方法?

android android-webview webviewclient

5
推荐指数
2
解决办法
1162
查看次数