小编imi*_*ike的帖子

如何在Swift中使用SHA1散列NSString?

在objective-c中它看起来像这样:

#include <sys/xattr.h>

@implementation NSString (reverse)

-(NSString*)sha1
{
    NSData *data = [self dataUsingEncoding:NSUTF8StringEncoding];
    uint8_t digest[CC_SHA1_DIGEST_LENGTH];
    CC_SHA1(data.bytes, (int)data.length, digest);
    NSMutableString *output = [NSMutableString stringWithCapacity:CC_SHA1_DIGEST_LENGTH * 2];
    for (int i = 0; i < CC_SHA1_DIGEST_LENGTH; i++)
        [output appendFormat:@"%02x", digest[i]];
    return output;
}

@end
Run Code Online (Sandbox Code Playgroud)

我需要Swift这样的东西,有可能吗?

请展示工作示例.

sha1 swift

55
推荐指数
4
解决办法
3万
查看次数

如何设置webview的滚动性能?

我将url(例如mail.google.com)加载到我的应用中的webview中,并在网页上滚动这么慢!三星GalaxyTab 10.1,摩托罗拉Droid X,Acer Liquid等测试为什么?

我尝试使用的参数: webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE); webView.setRenderPriority(RenderPriority.HIGH);

performance android scroll webview

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

如何将 swift 包添加到 TemplateInfo.plist 中?

我想将Swift Package Manager包与其TemplateInfo.plist文件中的 Xcode 模板链接起来

位于此处的 Xcode UI 中 SPM

我看到它project.pbxproj看起来像

/* Begin XCRemoteSwiftPackageReference section */
        255340AE243903CF00EFC2D2 /* XCRemoteSwiftPackageReference "UIKitPlus" */ = {
            isa = XCRemoteSwiftPackageReference;
            repositoryURL = "https://github.com/MihaelIsaev/UIKitPlus";
            requirement = {
                kind = upToNextMajorVersion;
                minimumVersion = 1.18.0;
            };
        };
/* End XCRemoteSwiftPackageReference section */
/* Begin XCSwiftPackageProductDependency section */
        255340AF243903CF00EFC2D2 /* UIKitPlus */ = {
            isa = XCSwiftPackageProductDependency;
            package = 255340AE243903CF00EFC2D2 /* XCRemoteSwiftPackageReference "UIKitPlus" */;
            productName = UIKitPlus;
        };
/* End XCSwiftPackageProductDependency section */ …
Run Code Online (Sandbox Code Playgroud)

xcode templates swift-package-manager

5
推荐指数
1
解决办法
590
查看次数

枚举给出了 Vapor 4 和 Fluent 的错误

这让我很困惑:

\n

我有一个模型,我想在其中使用枚举。我首先声明枚举:

\n
enum MenuChoices: String, Codable {\n    case reachableAt\n    case attentionTo\n    case reasonVisit\n    case reasonProblem\n}\n
Run Code Online (Sandbox Code Playgroud)\n

然后是我的班级领域:

\n
@Enum(key: "menu_choices")\nvar menuChoices: MenuChoices\n
Run Code Online (Sandbox Code Playgroud)\n

然后我使用迁移在数据库中创建它:

\n
struct CreateUserMenu: Migration {    \nfunc prepare(on database: Database) -> EventLoopFuture<Void> {\n    return database.enum("menu_choices")\n        .case("reachable_at")\n        .case("attention_to")\n        .case("reason_visit")\n        .case("reason_problem")\n        .create()\n        .flatMap { menu_choices in\n            return database.schema("user_menus")\n                .id()\n                .field("created_at", .datetime, .required)\n                .field("updated_at",.datetime, .required)\n                .field("deleted_at",.datetime)\n                .field("menu_choices", menu_choices)\n                .field("be_nl", .string)\n                .field("be_fr", .string)\n                .field("en_us", .string)\n                .create()\n        }\n    }\n}\n
Run Code Online (Sandbox Code Playgroud)\n

到目前为止,一切都很好。此迁移有效并且数据库看起来正常。但是当我想添加一些数据以在另一个迁移中为数据库提供种子时,我收到错误:

\n
let test = UserMenu( menuChoices: MenuChoices.reachableAt, beNl: "nl", …
Run Code Online (Sandbox Code Playgroud)

enums vapor vapor-fluent

5
推荐指数
1
解决办法
952
查看次数

我可以在哪里找到像MBProgressHUD这样的ios库,但对于android?

对于iOS我使用MBProgressHUD显示进度指示器,我喜欢它.

对于Android我使用标准进度对话框,但我想创建一些漂亮的进度条与微调在ios中.

我想加载这样的图像 ios微调器

如果您有任何相关信息,请回答.

抱歉我的英语,不是我的母语.

android android-progressbar

3
推荐指数
1
解决办法
5382
查看次数

AWS SQS 异常“413 请求实体太大”

我已经被困了一段时间来弄清楚以下异常,任何帮助都会被分配。我们正在 Laravel 项目上使用 AWS Lambda 服务。我们正在使用Laravel Excel将大量数据导出到 CSV 文件,并通过 Laravel SQS 队列来完成此操作。

PHP 版本:7.2
Laravel 框架:7.30.1
Laravel Excel:3.1

例外:

Aws\Sqs\Exception\SqsException /tmp/vendor/aws/aws-sdk-php...
stage.ERROR: Error executing "SendMessage" on "https://sqs.eu-central- 
1.amazonaws.com"; AWS HTTP error: Client error: `POST https://sqs.eu- 
central-1.amazonaws.com/` resulted in a `413 Request Entity Too Large` 
response:
HTTP content length exceeded 1662976 bytes.
Unable to parse error information from response - Error parsing XML: String could not be parsed as 
XML {"exception":"[object] (Aws\\Sqs\\Exception\\SqsException(code: 0): Error executing      
\"SendMessage\" on \"https://sqs.eu-central-1.amazonaws.com/"; AWS …
Run Code Online (Sandbox Code Playgroud)

amazon-sqs laravel laravel-excel aws-lambda laravel-vapor

3
推荐指数
1
解决办法
4188
查看次数

Swift数组的处理程序块

在objective-c中,我在.h文件中有一个代码:

typedef void(^SocketConnectionLost)();
typedef void(^SocketIOCallback)(id argsData);

@interface SocketConnection

@property (strong, nonatomic) SocketIO *socketIO;

@property (strong, nonatomic) NSMutableArray *socketConnectionLosts;

-(void)sendEventWithName:(NSString*)eventName
                withData:(id)data
        onConnectionLost:(SocketConnectionLost)connectionLost
                onAnswer:(SocketIOCallback)answer;

@end
Run Code Online (Sandbox Code Playgroud)

我在.m文件中有一个代码:

@implementation SocketConnection

- (void)init {
    self.socketIO = [[SocketIO alloc] initWithDelegate:self];
    [self.socketIO setReturnAllDataFromAck: YES];
    [self.socketIO connectToHost:kSocketHost onPort:kSocketPort withParams:params];
}

- (void) socketIODidDisconnect:(SocketIO *)socket
         disconnectedWithError:(NSError *)error {
    for(ServerRequestConnectionLost connectionLost in self.socketConnectionLosts)
        if(connectionLost)
            connectionLost();
    [self.socketConnectionLosts removeAllObjects];
}

-(void)sendEventWithName:(NSString*)eventName
                withData:(id)data
        onConnectionLost:(SocketConnectionLost)connectionLost
                onAnswer:(SocketIOCallback)answer {
    [self.socketConnectionLosts addObject:connectionLost];
    [self.socketIO sendEvent:eventName withData:data andAcknowledge:^(id argsData) {
        if(connectionLost)
            [self.socketConnectionLosts removeObject:connectionLost];
        if(answer)
            answer(argsData);
    }];
}

@end
Run Code Online (Sandbox Code Playgroud)

请帮我在Swift中重现这段代码,我不明白如何在NSArray上创建,添加和删除带有Array的Swift块 …

objective-c-blocks swift

2
推荐指数
1
解决办法
3113
查看次数