小编Tur*_*ole的帖子

Crashlytics无法找到清单

Fabric SDK(适用于Android)间歇性地失败构建,并出现以下错误:

ERROR - Crashlytics Developer Tools error.
com.crashlytics.tools.android.project.ManifestData$ManifestIOException: Crashlytics could not find the manifest. Not found at /Users/Shared/Jenkins/Home/workspace/my_project@2/true
    at com.crashlytics.tools.android.project.ManifestFileProvider.getManifestStream(ManifestFileProvider.java:32)
    at com.crashlytics.tools.android.project.DefaultManifestData.createManifest(DefaultManifestData.java:124)
...
Run Code Online (Sandbox Code Playgroud)

没有明显的模式,什么时候它会或不会失败的构建,所以任何调试这个真正恼人的问题的线索将不胜感激.

/Users/Shared/Jenkins/Home/workspace/my_project@2/true
Run Code Online (Sandbox Code Playgroud)

...看起来不像任何清单的路径,imo,但我不知道为什么会看到那里.

编辑添加:这是另一个版本的更完整的堆栈跟踪.pull_request_build是詹金斯工作的名字; 它合法地是项目的根目录.

15:41:46 ERROR - Crashlytics Developer Tools error.
15:41:46 com.crashlytics.tools.android.project.ManifestData$ManifestIOException: Crashlytics could not find the manifest. Not found at /Users/Shared/Jenkins/Home/workspace/pull_request_build@2/true
15:41:46    at com.crashlytics.tools.android.project.ManifestFileProvider.getManifestStream(ManifestFileProvider.java:32)
15:41:46    at com.crashlytics.tools.android.project.DefaultManifestData.createManifest(DefaultManifestData.java:124)
15:41:46    at com.crashlytics.tools.android.project.StandardAndroidProjectFactory.createTypedProject(StandardAndroidProjectFactory.java:176)
15:41:46    at com.crashlytics.tools.android.project.StandardAndroidProjectFactory.create(StandardAndroidProjectFactory.java:118)
15:41:46    at com.crashlytics.tools.android.project.StandardAndroidProjectFactory.create(StandardAndroidProjectFactory.java:93)
15:41:46    at com.crashlytics.tools.android.DeveloperTools.processProperties(DeveloperTools.java:483)
15:41:46    at com.crashlytics.tools.android.DeveloperTools.processArgsInternal(DeveloperTools.java:348)
15:41:46    at com.crashlytics.tools.android.DeveloperTools.gradleMain(DeveloperTools.java:292)
15:41:46    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
15:41:46    at …
Run Code Online (Sandbox Code Playgroud)

android google-fabric

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

在InstrumentationTestCase运行之间重置应用程序状态

我的一位QA工程师正在支持具有相当大的代码库和许多不同的SharedPreferences文件的应用程序.前几天他来找我,询问如何在测试运行之间重置应用程序状态,就像它已经卸载 - 重新安装一样.

Espresso(他正在使用)和Android测试框架本身都不支持它,所以我不知道该告诉他什么.使用本机方法清除所有不同的SharedPreferences文件将是一个非常脆弱的解决方案.

如何在仪表期间重置应用程序状态?

android-testing android-espresso android-instrumentation

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

显示没有网络请求的NetworkImageView的默认图像

我有一个ListView显示的东西,其中许多有一个说明性的图像,其中一些没有.ViewHolder使用NetworkImageView显示插图.

问题是即使设置了默认图像,也只有在调用setImageUrl()时才会显示它,如果url为空,则会将视图的源位图设置为null.如果网址不为空,则会发出请求.这意味着即使没有与该特定视图关联的有效网络URL,也强制一个人发出网络请求,否则不显示默认图像而是显示空视图.

(提交的问题:https://code.google.com/p/android/issues/detail?id = 59538)

有没有办法对没有有效网址的项目进行虚假网络请求?

android android-volley networkimageview

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

horizo​​ntalscrollview的fillviewport禁用滚动?

我有这个布局,如果我不在我的Horizo​​ntalScrollView中使用fillviewport = true,它的缩放很奇怪(可能是由于不可靠的布局嵌套).

当fillviewport = false时,一切都工作很好(除了奇数缩放),但是当fillviewport = true时,缩放是完美的但不会发生滚动.

这是布局(注意:我知道你不应该在滚动视图中放置webview.但是webview没有smoothscrollto也没有公开setscroller方法,所以...... bleh.)

<?xml version="1.0" encoding="utf-8"?>
<HorizontalScrollView 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/webContainer"
    android:layout_below="@+id/titlebar"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:fillViewport="true">
    <WebView 
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/webZ"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
    />
</HorizontalScrollView>
Run Code Online (Sandbox Code Playgroud)

设置android:fillViewport ="true"通常不会禁用视图中的滚动,是吗?

它应该确保滚动视图填充视口而不管其内容的大小,是吗?我认为视口是屏幕的可见区域,并且在webview中可见区域的边缘肯定有更多内容,我只是无法再滚动到它.

我可以从logcat看到正在调用滚动方法,它们只是不改变屏幕.(除非我将fillviewport设置为false.)

android android-layout android-scrollbar

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

按钮缩放到背景图像而不是内容

我需要做的是让背景图像填充按钮的自然大小,因为没有指定背景并显示默认的灰色背景图像.但相反,我的按钮会缩放到背景图像的大小而不是文本.

之前有一个问题,但没有人有解决方案.

按钮:

在此输入图像描述

<Button
    android:id="@+id/morebtn"
    style="@style/CustomButton"
    android:text="More" />
Run Code Online (Sandbox Code Playgroud)

我有这个自定义按钮样式(greybutton是一个9补丁):

<resources>
    <style name="CustomButton" parent="@android:style/TextAppearance">
        <item name="android:textColor">#FFFFFF</item>
        <item name="android:layout_marginLeft">10dip</item>
        <item name="android:layout_marginRight">10dip</item>
        <item name="android:layout_marginBottom">10dip</item>
        <item name="android:layout_width">wrap_content</item>
        <item name="android:layout_height">wrap_content</item>
        <item name="android:layout_centerInParent">true</item>
        <item name="android:background">@drawable/greybutton</item>
        <item name="android:textSize">20sp</item>
    </style>
</resources>
Run Code Online (Sandbox Code Playgroud)

现在它尽管被告知wrap_content,但它会在宽度方向上填满屏幕.当我从Button样式中删除android:background时,按钮缩小以按预期包装文本.

有谁知道为什么我的背景图像不像默认的按钮背景?

android android-layout android-button

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

为什么这个Ruby哈希不是我认为的那样?

我有这个代码:

$ze = Hash.new( Hash.new(2) )

$ze['test'] = {0=> 'a', 1=>'b', 3 => 'c'}

$ze[5][0] = 'one'
$ze[5][1] = "two"

puts $ze
puts $ze[5]
Run Code Online (Sandbox Code Playgroud)

这是输出:

{"test"=>{0=>"a", 1=>"b", 3=>"c"}} 
{0=>"one", 1=>"two"}
Run Code Online (Sandbox Code Playgroud)

为什么不输出:

{"test"=>{0=>"a", 1=>"b", 3=>"c"}, 5=>{0=>"one", 1=>"two"}} 
{0=>"one", 1=>"two"}
Run Code Online (Sandbox Code Playgroud)

ruby hashmap

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

Android Studio模块依赖于另一个模块的测试

我正在尝试使用Gradle Java插件来执行Android项目中存在的jUnit测试.我的解决方案是创建一个应用Java插件的第二个模块,并将测试sourceSet设置为app模块的src/test目录.

test-module的build.gradle:

apply plugin: 'java'
...
dependencies {
    ...
    testCompile project(':app-module')
}
sourceSets {
    test {
        java.srcDirs += ["${appDir}/src/test/java"]
    }
}
Run Code Online (Sandbox Code Playgroud)

这可以在命令行中正常工作,但Android Studio拒绝导入在子模块外部具有源集的项目.它抛出错误:Can't register given path of type 'TEST' because it's out of content root.

.
??? app-module
?   ??? build.gradle
?   ??? src
?       ??? main
?       ??? test
??? test-module
?   ??? build.gradle
??? build.gradle
??? settings.gradle
Run Code Online (Sandbox Code Playgroud)

我尝试从父build.gradle配置它,但这没有改变任何东西.我可以在测试模块中添加app-module作为testCompile项目依赖项,但这不会导致测试模块添加app-module的测试.

是否有任何想法让测试模块运行app-module的测试而不会激发Android Studio对远程源集的限制?

android gradle android-studio

5
推荐指数
0
解决办法
902
查看次数

AndroidJUnitRunner + ActivityInstrumentationTestCase2 超时?

设置:

我继承的一个较旧的项目有很多遗留的仪器测试,我想对它们施加超时,因为它们中的很多都可以无限期地挂起,这使得很难获得测试报告。我正在将测试更新为 Junit4 样式,但目前它们都在扩展 ActivityInstrumentationTestCase2。

到目前为止尝试过:

AndroidJUnitRunner的文档中,它说要设置这个标志:

设置将应用于每个测试的超时(以毫秒为单位):-e timeout_msec 5000 ...

...所有参数也可以通过元数据标签在 AndroidManifest 中指定

我已经尝试将 AndroidJUnitRunner 配置添加到应用程序清单和测试清单,但 timeout_msec 元数据项到目前为止没有任何影响。

android-instrumentation android-junit

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

内容拉伸以填充Horizo​​ntalScrollView

我在这里做了一个不可取的事情,我知道,但我有一个嵌入在horizo​​ntalscrollview中的webview.(我需要比webview提供更多的滚动控件.)

布局如下所示:

<?xml version="1.0" encoding="utf-8"?>
<HorizontalScrollView 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/webRel"
    android:layout_below="@+id/titlebar"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >
    <WebView 
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/webZ"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
    />
</HorizontalScrollView>
Run Code Online (Sandbox Code Playgroud)

结果如下: 我的网页浏览.

webview没有填满horizo​​ntalscrollview.horizo​​ntalscrollview正在归档视图,所以我想我可以说webview没有填充视图,即使我已经设置为fill_parent.我真的非常喜欢它,如果有人帮我弄清楚如何让webview在横向上填充横向视图...因为然后我测量高度并使用该测量来对文本进行分页(然后以宽度方式显示在块中这就是我选择horizo​​ntalscrollview的原因.)

:d

(或者,有关在webview中进行平滑水平滚动的更简洁方法的建议也会有所帮助.)

android webview horizontalscrollview

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