小编Mat*_*ias的帖子

有没有办法在Spock中进行模拟参数捕获

我环顾四周,尝试了不同的事情无济于事.互联网上的例子很少,恕我直言很简单.我的用例:

(下面的'itocNetworkHandler'是模拟)

when: "we're doing stuff"
    StandardResponse response = cms.doCardStuff("123", "111", order)
....
then: "we get proper calls and response object"
    1 * cms.itocNetworkHandler.doNetworkCall(
            { it instanceof ReplacementRequestRecord
            }, StandardResponseRecord.class) >> record
Run Code Online (Sandbox Code Playgroud)

我想将参数('it')存储到mock上的"doNetworkCall"中.

我想要参数的原因是因为我正在测试的对象应该接受我的参数,做东西,创建一个新对象并将那个传递给我的模拟.我想确保创建的对象看起来像它应该的样子.

指针非常赞赏.

mocking spock

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

如何在IOS13中找到这个与字体相关的核心文本警告的来源?

在更新我的应用程序时,我注意到在 IOS13 上的 Xcode 11.2 中运行应用程序时,我在日志中收到了大量警告。

CoreText 注意:客户端请求名称“.SFUI-Regular”,它将获得 TimesNewRomanPSMT 而不是预期的字体。所有系统 UI 字体访问都应该通过适当的 API,例如 CTFontCreateUIFontForLanguage() 或 +[UIFont systemFontOfSize:]。

我仔细研究了一下,从 WWDC 中找到了这句话:

正如在许多 WWDC 会议中提到的,不直接使用点前缀字体名称。

我自己几乎只使用 IB 和笔尖来设置文本字段等的字体,并且在我的代码中的任何地方都没有提到“SFUI-Regular”,所以我不确定如何找到这些警告的实际原因(我有日志中大约有 20-30 行)。

有没有人对我如何找到警告来自哪里以及如何解决它有任何提示?

xcode objective-c core-text ios swift

23
推荐指数
2
解决办法
8745
查看次数

我如何摆脱IOS版本"部分:在IOS X中引入"Xcode中的警告

所以,我有一些地方只有在某个版本之后才能提供.一个例子是我在我的应用程序中引入的一些新的NFC东西:

@property(nonatomic, retain) NFCNDEFReaderSession *nfcSession;
Run Code Online (Sandbox Code Playgroud)

我也有它的方法,即使我检查类的可用性,我得到它,例如:

if ([NFCNDEFReaderSession class]){
Run Code Online (Sandbox Code Playgroud)

我的应用程序工作正常,但我得到一个xcode警告说

NFCNDEFReaderSession is partial: introduced in iOS 11.0
Run Code Online (Sandbox Code Playgroud)

我环顾四周,但没有找到一种方法告诉编译器它没关系,并摆脱警告.

指针非常感谢!

xcode objective-c ios ios11

19
推荐指数
2
解决办法
4291
查看次数

在 Android 12/API 31 中,地理围栏无法与 IMMUTABLE PendingIntent 配合使用。为什么?

PendingIntent 中的一个新 PendingIntent 字段是 FLAG_IMMUTABLE。

在31中,你必须指定MUTABLE或IMMUTABLE,否则你无法创建PendingIntent,(当然我们不能有默认值,那是针对失败者的)如此处引用

根据(搞笑的)Google Javadoc for Pendingintent,你基本上应该总是使用 IMMUTABLE (重点是我的):

强烈建议在创建 PendingIntent 时使用 FLAG_IMMUTABLE。仅当某些功能依赖于修改底层意图时才应使用 FLAG_MUTABLE,例如需要与内联回复或气泡一起使用的任何 PendingIntent (编辑评论:什么?)。

是的,所以我总是为地理围栏创建 PendingIntents,如下所示:

PendingIntent proximityIntent = PendingIntent.getBroadcast(context, requestCode, intent, PendingIntent.FLAG_NO_CREATE)
Run Code Online (Sandbox Code Playgroud)

一直工作得很好。但是,按照上面的文档,我添加了 IMMUTABLE 标志,如下所示:

PendingIntent proximityIntent = PendingIntent.getBroadcast(context, requestCode, intent, PendingIntent.FLAG_NO_CREATE|PendingIntent.FLAG_IMMUTABLE)
Run Code Online (Sandbox Code Playgroud)

现在,结果是,虽然我仍然在接收器中进行地理围栏转换,但如果我调用

List<Geofence> triggeringGeofences = geofencingEvent.getTriggeringGeofences();
Run Code Online (Sandbox Code Playgroud)

它返回空!

所以,我有两个问题。

  1. 为什么 IMMUTABLE 标志导致我没有像过去那样获得触发地理围栏?

  2. 难道我做错了什么?有没有办法使用地理围栏触发器设置 IMMUTABLE?

其实我有三个问题:

  1. 为什么谷歌的文档如此混乱、糟糕、矛盾和落后?(这是一个反问句)

非常感谢指点。

android android-pendingintent android-geofence android-12

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

我可以将uilabel链接到Interface Builder中的可本地化字符串吗?

谷歌搜索,但没有找到解决方案:

基本上,我有一个Localizable.strings设置,我在我的代码中使用.但是,如果我能以某种方式在我的XIB中引用这些值,那将是非常甜蜜的,这样我就可以避免每种语言创建一个烦人的XIB ...

这可能吗?

iphone localization interface-builder uilabel localizable.strings

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

Spring数据可分页和LIMIT/OFFSET

我正在考虑将传统的jpa/dao解决方案迁移到Spring Data.

但是,我们的一个前端是SmartGWT,它们的数据绑定组件仅使用限制/偏移量逐步加载数据,这使得难以使用Pageable.

这会导致问题,因为不能确定限制/偏移是否可以最终转换为页码.(可能会有所不同,具体取决于用户如何滚动,屏幕调整大小等).

我查看了Slice等,但无法找到在任何地方使用限制/偏移值的方法.

想知道是否有人有任何指针?最好我想继续使用limit/offset,但是在我的Repository接口中使用它们而不必编写实现并像我现在那样手动设置它们(query.setMaxResults等)

编辑:澄清我遇到问题的原因 - 在smartgwt组件中初始和后续数据提取之间的限制/偏移可能不同.对于listgrid,第一次获取的限制可能设置为89,例如,因为那是屏幕上可见的行数,偏移量为0.但是,下一个请求可能有偏移量89,并且限制为50,因为这是组件的"datapagesize" "值为50,这就是我向下滚动时所取的东西.如果我在释放之前滚动到远处,它可能会取决于设置,取而代之的是行159-209.基本上,不能保证偏移量是任何东西的倍数.将偏移17,限制5转换为页面很难.

spring jpa spring-data spring-data-jpa

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

将restkit安装到xcode中 - 它总是这么复杂吗?

尝试将restkit框架用于我的xcode项目,他们在github页面上有一个"安装指南"(https://github.com/RestKit/RestKit,向下滚动到xcode 4.2)

好的,所以从Java世界进入为期2周的目标,请原谅:

这个指南是10个步骤,其中一半我甚至不明白它是什么...它只是我,或者这是非常复杂,只是为了能够使用第三方API?

如果出现问题,我会像地狱中的雪人一样有机会了解最新情况,更不用说修理了......

iphone xcode json objective-c ios

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

第三方库如何在Objective-C和Xcode中工作?

相当新的(2周)到​​Objective-C和Xcode,我正在尝试添加我的第一个"外部"库,名为restkit,从外部服务器读取一些JSON.

但是,看看他们的"入门"指南,根据我的理解,你只需下载一个带有源代码的软件包并将其链接进去并以某种方式将其构建为您自己的构建的一部分......(指南在这里),特别第4点很有意思)

我是一个多年的Java开发人员,我尝试将它与它的工作方式进行比较,使用无法改变的编译,打包的jar文件.jarfiles如何与此相关?从我所看到的,你可以进入并更改你认为合适的任何第三方文件.

如果有人能帮我理解,我会很感激.

xcode json objective-c restkit

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

为什么locationmanager使用新的gettime-timestamp返回旧的位置修复?

我们有一个应用程序,在用户操作尝试获取位置修复.它可以监听GPS和网络,并且具有基于时间/准确度的决策矩阵,以确定何时停止收听以及返回什么修复.

我们偶尔会注意到一种非常奇怪的行为.我们使用经典的方式来查看修复程序的年龄,如下所示:

long age = now - newLocation.getTime();
if(age >= prefs.getLocationMaxAge()){
    Log.d(TAG, "location too old.");
    return;
}
Run Code Online (Sandbox Code Playgroud)

但有时候,根据返回的时间戳,从操作系统返回的location.getTime的年龄可能是15-20秒,尽管我们可以肯定它已经很老了.例如,如果经度/纬度修正来自手机30分钟前的位置!

它似乎既发生在Wi-Fi和网络上,也不发生在GPS上.对我来说,这完全是疯了.有没有其他人看过这个,有什么办法吗?

我们已经在几款不同的手机上使用它,最近的一款是三星Galaxy S II.

非常欢迎帮助.

编辑:要非常清楚,问题是操作系统调用"onlocationchanged"回调,其时间戳可能是几秒钟,当我确定"新"中的经度/纬度时修复是手机至少没有使用30分钟的地方.

这使得很难准确地确定手机的位置......

android locationmanager android-location

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

如何在新版本中使用自定义配置启动 MinIO Server?

我正在尝试启动并运行 Minio 服务器。我在这里阅读了他们的“服务器配置指南” ,但有一件事我不明白。

该指南说,以前您可以将 config.json 放入您指定的 mino 主目录中,但现在已弃用。相反,您应该使用他们的客户端(“mc”)通过管理命令更新配置?

这对我来说似乎非常麻烦,尽管我知道您可以通过 mc 客户端传递整个 json.config 文件。

但是,如果您有一个 docker 容器并想使用自定义配置启动它怎么办?我不明白你会如何做到这一点,他们的“docker run”仅包含有关如何使用自定义用户名/密码的环境变量启动它的信息。

对我来说,在 minio 主目录中保留 config.json 更有意义,我不完全明白他们为什么删除它。

如果有人能帮助我更好地理解配置,我会成为一个更快乐的迷你露营者。

docker minio

6
推荐指数
0
解决办法
911
查看次数