Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 机器人自定义阴影对象_Android_Android Emulator_Mocking_Robolectric - Fatal编程技术网

Android 机器人自定义阴影对象

Android 机器人自定义阴影对象,android,android-emulator,mocking,robolectric,Android,Android Emulator,Mocking,Robolectric,OOTB不支持那么好的区域设置。因此,如果你的应用程序依赖于区域设置(如果它们是i18n'n'n'n,那么很多应用程序都依赖于区域设置),这可能是一件非常痛苦的事情。长话短说,我创建了自己的ShadowFooGeocoder和ShadowFooAddress,允许我模拟我想要的区域设置。它们基本上是现有阴影的重新实现 然而,当我将我的类绑定为bindShadowClass(shadowfoogocoder.class)时,效果非常好。在运行时,将返回正确的阴影。问题是我想在这个物体上设置模拟,但

OOTB不支持那么好的区域设置。因此,如果你的应用程序依赖于区域设置(如果它们是i18n'n'n'n,那么很多应用程序都依赖于区域设置),这可能是一件非常痛苦的事情。长话短说,我创建了自己的ShadowFooGeocoder和ShadowFooAddress,允许我模拟我想要的区域设置。它们基本上是现有阴影的重新实现

然而,当我将我的类绑定为bindShadowClass(shadowfoogocoder.class)时,效果非常好。在运行时,将返回正确的阴影。问题是我想在这个物体上设置模拟,但我不知道如何设置。shadowOf(instance),其中instance是注入的地理编码器,返回ShadowGeoCoder。我尝试过直接使用暗影牧马人,但这也会返回一个暗影地理编码器

我如何获得通过bindShadowClass(…)调用绑定的阴影类,以便设置期望值(模拟)


注:这是关于机器人分子群的同一问题的回复。我之所以在这里发帖,是因为我让任何人回答小组问题的成功率相当低。我希望这里会有更好的结果

我在这里基本上是这样扩展ShadowGeocoder的:

@SuppressWarnings({"UnusedDeclaration"})
@Implements(Geocoder.class)
public class ShadowFooBarGeocoder extends ShadowGeocoder {
  // implementation stuff
}

然后,我将使用bindShadowClasss(…)绑定它,当我通过静态shadowOf(…)调用检索阴影时,我得到一个“ShadowGeocoder”,它是ShadowFooBarGeocoder的一个实例。然后我将它转换成那种类型,并执行我需要的任何工作

我在这里基本上是这样扩展ShadowGeocoder的:

@SuppressWarnings({"UnusedDeclaration"})
@Implements(Geocoder.class)
public class ShadowFooBarGeocoder extends ShadowGeocoder {
  // implementation stuff
}
然后,我将使用bindShadowClasss(…)绑定它,当我通过静态shadowOf(…)调用检索阴影时,我得到一个“ShadowGeocoder”,它是ShadowFooBarGeocoder的一个实例。然后我将它转换成那种类型,并执行我需要的任何工作