我正在尝试将 watchOS 应用程序的视图转换为 Swift UI。我想将 watchKit 中的音量控制移植到带有自定义控件的 SwiftUI。在下图中,您可以看到视图的当前状态。
音量控制会根据当前状态更改铃声的进度,volume并且volume在我转动数码表冠时也会更改。如果没有 SwiftUI,就可以在旋转表冠时调用一个函数。这已经改变了,系统只允许我绑定一个变量。
我想知道的是绑定一个变量并在该变量的每次更改时调用一个函数。因为正常的 Digital Crown 行为不能满足我的需求。
一件事有效,但远非完美是:
.digitalCrownRotation($crownAccumulator, from: -100.0, through: 100.0, by: 1, sensitivity: .low, isContinuous: true, isHapticFeedbackEnabled: true)
.onReceive(Just(self.crownAccumulator), perform: self.crownChanged(crownAccumulator:))
Run Code Online (Sandbox Code Playgroud)
OnReceive 将在每次旋转表冠时调用,但也会在视图的每一次其他更新时调用。
所以我想要的是这样的管道:
皇冠旋转?crownAccumulator变化 ?名为 async 的函数?功能更新volume
过去我会使用 didSet 来完成此操作,但这不再可用
这里是它的代码:
@ObservedObject var group: Group
@State var animateSongTitle: Bool = false
@State var songTitle: String = "Very long song title that should be scrolled"
@State var artist: String = "Artist name"
@State …Run Code Online (Sandbox Code Playgroud) 我正在用 SwiftUI 绘制一些漂亮的图形,因为它非常简单易行。然后我想将整个 SwiftUI 视图导出为 PDF,以便其他人可以以一种很好的方式查看图形。SwiftUI 没有直接为此提供解决方案。
干杯,
亚历克斯
我目前正在开发一款适用于iOS 8的应用程序,该应用程序使用iCloud Drive和CloudKit Framework.一切都是使用Xcode 6设置的.
当我尝试将我的应用程序提交到iTunesConnect时,我收到以下错误:

当我在我的iCloud权利中添加密钥时,我无法对应用程序进行代码签名,Xcode也向我发送错误.
<key>com.apple.developer.ubiquity-container-identifiers</key>
<string>de.sn0wfreeze.CloudFInder</string>
Run Code Online (Sandbox Code Playgroud)
我会得到那个错误:

我无法编码签名.有人可以帮我解决这个问题吗?
我目前正在开发一个应用程序,它使用 openssl 库 (libcrypto) 来生成证书。现在我必须获取现有证书的哈希值。
当我使用我的终端时,我能够通过使用生成哈希值
openssl x509 -hash -in cert.pem -noout
Run Code Online (Sandbox Code Playgroud)
输出:01da0e2b
这是我尝试使用 C 中的库生成哈希值的代码。
X509 *cert = NULL;
FILE *fp = fopen(currentCert.UTF8String, "r");
PEM_read_X509(fp, &cert, NULL, NULL);
long hash = X509_subject_name_hash(cert);
char *mdString = malloc(sizeof(long));
sprintf(mdString, "%lx",hash);
printf(mdString);
Run Code Online (Sandbox Code Playgroud)
输出:1817886a
但实际上我的输出是不同的。有人知道我做错了什么吗?
自watchOS 6 SDK的第一个beta版本以来,如果使用watchOS 6.0 SDK进行编译,我的应用程序开始崩溃。watchOS 6.1不会出现此问题,而在模拟器中会更经常发生。现在,我已经能够确定问题所在:
我有一个WKInterfaceImage正在显示通过使用一系列图像制作动画的微调框。如果我有一个WKInterfaceController显示这样的微调器的新推送,则在视图消失时它将崩溃。在内部使用SPInterfaceImageView它似乎被释放了两次。
这是Xcode日志消息:
-[SPInterfaceImageView release]: message sent to deallocated instance 0x3971ed60
Run Code Online (Sandbox Code Playgroud)
有没有人遇到过同样的问题?我猜这是watchOS SDK中的错误。
我不能提供任何源代码,因为仅使用情节提要板就可以实现。我的开发语言是Swift。
亲切的问候
亚历山大·海尼希
我目前正在尝试使用Java安全API和BouncyCastle生成主题哈希。
使用Openssl库时,这是我的工作:
openssl x509 -in /Users/Sn0wfreezeDev/Downloads/Test.pem -hash
Run Code Online (Sandbox Code Playgroud)
这会生成一个短的8位数字哈希1817886a
这是我的Java代码
X509Certificate cert = CertManager.getCertificate(number, c);
MessageDigest sha1 = MessageDigest.getInstance("SHA1");
System.out.println(" Subject " + cert.getSubjectDN());
System.out.println(" Issuer " + cert.getIssuerDN());
sha1.update(cert.getSubjectDN().getName().getBytes());
String hexString = bytesToHex(sha1.digest());
System.out.println(" sha1 " + hexString);
System.out.println();
Run Code Online (Sandbox Code Playgroud) hash ×2
ios ×2
openssl ×2
swift ×2
swiftui ×2
apple-watch ×1
bouncycastle ×1
c ×1
cloudkit ×1
code-signing ×1
entitlements ×1
icloud ×1
java ×1
libcrypto ×1
pdf ×1
uikit ×1
watchos ×1
watchos-6 ×1
x509 ×1
xcode6 ×1