我正在构建一个iPhone应用程序,并坚持以下:
unsigned char hashedChars[32];
CC_SHA256([inputString UTF8String], [inputString lengthOfBytesUsingEncoding:NSASCIIStringEncoding], hashedChars);
NSData *hashedData = [NSData dataWithBytes:hashedChars length:32];
NSLog(@"hashedData = %@", hashedData);
Run Code Online (Sandbox Code Playgroud)
日志显示如下:
hashedData = <abcdefgh abcdefgh abcdefgh abcdefgh abcdefgh abcdefgh abcdefgh abcdefgh>
Run Code Online (Sandbox Code Playgroud)
但我需要的是将hashedData转换为NSString,如下所示:
NSString *someString = @"abcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefgh";
Run Code Online (Sandbox Code Playgroud)
所以基本上结果需要像hashedData,除了我不想在它们之间使用尖括号和空格.
我想知道是否有人在Objective-C中为iPhone开发提供以下php功能:
非常感谢!
我正在构建一个iPhone/iPad应用程序来阅读pdf文件,到目前为止设法下载,打开文件,放大/缩小,书签等.由于我不是专家程序员,我只能在阅读了大量博客后才能这样做和stackoverflow的问题.
我还包括一个搜索功能,发现以下网站有助于解释CGPDFScanner的使用 http://www.random-ideas.net/posts/42
现在要解决的谜团是在pdf中定位文本位置并突出显示结果(与iBooks中的完全相同).很多人已经说过pdf解析非常复杂,我希望有人可以分享他们的代码.
我下面的代码导致我的应用程序退出,即获取黑屏,然后在调试器控制台中看到:程序收到信号:"0".
基本上,当我的orderArray计数为2000或更多时,它会导致问题.我在iOS 4.2上使用iPhone 3GS
问题:创建我的long outStr是否有更高效,耗费更少内存的方法?
NSString *outStr = @"";
for (int i = 0; i < count; i++) {
NSDictionary *dict = [[ARAppDelegate sharedAppDelegate].orderArray objectAtIndex:i];
outStr = [outStr stringByAppendingFormat:@"%@,%@,%@,%@\n",
[dict valueForKey:@"CODE"],
[dict valueForKey:@"QTY"],
[[ARAppDelegate sharedAppDelegate].descDict valueForKey:[dict valueForKey:@"CODE"]],
[[ARAppDelegate sharedAppDelegate].priceDict valueForKey:[dict valueForKey:@"CODE"]]];
}
Run Code Online (Sandbox Code Playgroud)
更新:感谢非常善良的人帮助,下面是我修改后的代码:
NSArray *orderA = [ARAppDelegate sharedAppDelegate].orderArray;
NSDictionary *descD = [ARAppDelegate sharedAppDelegate].descDict;
NSDictionary *priceD = [ARAppDelegate sharedAppDelegate].priceDict;
NSMutableString *outStr = [[[NSMutableString alloc] init] autorelease];
for (int i = 0; i < [orderA count]; i++) {
NSDictionary *dict = …Run Code Online (Sandbox Code Playgroud) 我一直在编写iOS应用程序,并完成了一个包含很多框架的项目.现在我使用它作为模板来启动一个需要较少功能的新项目,因此我应该能够减少所需的框架,并希望减少项目的构建时间和大小.
问题:是否有快速方法可以检查项目中不再需要哪些框架?
我正在YouTube上关注此Google Cloud Firestore示例,并成功获取了实时更新。但是,我不知道如何取消订阅更新,因为视频中没有对此进行解释。我阅读了文档,以创建一个unsubscribe()函数,但它对我不起作用。
getRealtimeUpdates = function(document) {
firestore.collection("collection_name")
.onSnapshot(function(querySnapshot) {
querySnapshot.forEach(function(doc) {
if (doc && doc.exists) {
const myData = doc.data();
// DO SOMETHING
}
});
});
}Run Code Online (Sandbox Code Playgroud)