我环顾四周,尝试了不同的事情无济于事.互联网上的例子很少,恕我直言很简单.我的用例:
(下面的'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"中.
我想要参数的原因是因为我正在测试的对象应该接受我的参数,做东西,创建一个新对象并将那个传递给我的模拟.我想确保创建的对象看起来像它应该的样子.
指针非常赞赏.
在更新我的应用程序时,我注意到在 IOS13 上的 Xcode 11.2 中运行应用程序时,我在日志中收到了大量警告。
CoreText 注意:客户端请求名称“.SFUI-Regular”,它将获得 TimesNewRomanPSMT 而不是预期的字体。所有系统 UI 字体访问都应该通过适当的 API,例如 CTFontCreateUIFontForLanguage() 或 +[UIFont systemFontOfSize:]。
我仔细研究了一下,从 WWDC 中找到了这句话:
正如在许多 WWDC 会议中提到的,不直接使用点前缀字体名称。
我自己几乎只使用 IB 和笔尖来设置文本字段等的字体,并且在我的代码中的任何地方都没有提到“SFUI-Regular”,所以我不确定如何找到这些警告的实际原因(我有日志中大约有 20-30 行)。
有没有人对我如何找到警告来自哪里以及如何解决它有任何提示?
所以,我有一些地方只有在某个版本之后才能提供.一个例子是我在我的应用程序中引入的一些新的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)
我环顾四周,但没有找到一种方法告诉编译器它没关系,并摆脱警告.
指针非常感谢!
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)
它返回空!
所以,我有两个问题。
为什么 IMMUTABLE 标志导致我没有像过去那样获得触发地理围栏?
难道我做错了什么?有没有办法使用地理围栏触发器设置 IMMUTABLE?
其实我有三个问题:
非常感谢指点。
谷歌搜索,但没有找到解决方案:
基本上,我有一个Localizable.strings设置,我在我的代码中使用.但是,如果我能以某种方式在我的XIB中引用这些值,那将是非常甜蜜的,这样我就可以避免每种语言创建一个烦人的XIB ...
这可能吗?
iphone localization interface-builder uilabel localizable.strings
我正在考虑将传统的jpa/dao解决方案迁移到Spring Data.
但是,我们的一个前端是SmartGWT,它们的数据绑定组件仅使用限制/偏移量逐步加载数据,这使得难以使用Pageable.
这会导致问题,因为不能确定限制/偏移是否可以最终转换为页码.(可能会有所不同,具体取决于用户如何滚动,屏幕调整大小等).
我查看了Slice等,但无法找到在任何地方使用限制/偏移值的方法.
想知道是否有人有任何指针?最好我想继续使用limit/offset,但是在我的Repository接口中使用它们而不必编写实现并像我现在那样手动设置它们(query.setMaxResults等)
编辑:澄清我遇到问题的原因 - 在smartgwt组件中初始和后续数据提取之间的限制/偏移可能不同.对于listgrid,第一次获取的限制可能设置为89,例如,因为那是屏幕上可见的行数,偏移量为0.但是,下一个请求可能有偏移量89,并且限制为50,因为这是组件的"datapagesize" "值为50,这就是我向下滚动时所取的东西.如果我在释放之前滚动到远处,它可能会取决于设置,取而代之的是行159-209.基本上,不能保证偏移量是任何东西的倍数.将偏移17,限制5转换为页面很难.
尝试将restkit框架用于我的xcode项目,他们在github页面上有一个"安装指南"(https://github.com/RestKit/RestKit,向下滚动到xcode 4.2)
好的,所以从Java世界进入为期2周的目标,请原谅:
这个指南是10个步骤,其中一半我甚至不明白它是什么...它只是我,或者这是非常复杂,只是为了能够使用第三方API?
如果出现问题,我会像地狱中的雪人一样有机会了解最新情况,更不用说修理了......
我们有一个应用程序,在用户操作尝试获取位置修复.它可以监听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分钟的地方.
这使得很难准确地确定手机的位置......
我正在尝试启动并运行 Minio 服务器。我在这里阅读了他们的“服务器配置指南” ,但有一件事我不明白。
该指南说,以前您可以将 config.json 放入您指定的 mino 主目录中,但现在已弃用。相反,您应该使用他们的客户端(“mc”)通过管理命令更新配置?
这对我来说似乎非常麻烦,尽管我知道您可以通过 mc 客户端传递整个 json.config 文件。
但是,如果您有一个 docker 容器并想使用自定义配置启动它怎么办?我不明白你会如何做到这一点,他们的“docker run”仅包含有关如何使用自定义用户名/密码的环境变量启动它的信息。
对我来说,在 minio 主目录中保留 config.json 更有意义,我不完全明白他们为什么删除它。
如果有人能帮助我更好地理解配置,我会成为一个更快乐的迷你露营者。
objective-c ×4
xcode ×4
ios ×3
android ×2
iphone ×2
json ×2
android-12 ×1
core-text ×1
docker ×1
ios11 ×1
jpa ×1
localization ×1
minio ×1
mocking ×1
restkit ×1
spock ×1
spring ×1
spring-data ×1
swift ×1
uilabel ×1