小编Dal*_*ers的帖子

无法插入新的插座连接错误

我已经创建了一个自定义单元格来加载到表格中.界面已经完成,现在我正在尝试链接xib和类.

我打开了分屏视图,我尝试控制拖动项目,以便Xcode可以为我建立连接.当我填写名称并单击连接时,我收到一个错误:

无法插入新的插座连接:无法将源代码插入URL中的文档://localhost/Users/Velox/Projects/CompanyName/ProjectName/ProjectName/HistoryCell.m,因为它不包含名为HistoryCell的类的类定义.

我已将xib的自定义类设置为HistoryCell.

我在这里错过了什么?

谢谢.

cocoa-touch objective-c uitableview uikit ios

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

使用运行脚本时更新Xcode构建进度条

在Xcode中,您可以指定自定义脚本来构建应用程序.我有一个广泛使用这些项目的项目.例如,一个目标构建模拟器版本(32位和64位)和ARM版本以及文档,然后将生成的静态库与其他一些文件捆绑到一个框架中

运行上面的代码可能需要几分钟.通常在构建时,Xcode在屏幕顶部有一个进度条.当您使用这些脚本时,它会填充一小部分,然后停在那里直到您的脚本完成.

如果有办法告诉Xcode更新这个进度条会很好吗?它不一定是完美的,只是提供一些反馈,表明某些事情正在发生,并且构建过程没有停滞.

谢谢!

xcode build

17
推荐指数
1
解决办法
876
查看次数

Python re.findall()没有按预期工作

我有代码:

import re
sequence="aabbaa"
rexp=re.compile("(aa|bb)+")
rexp.findall(sequence)
Run Code Online (Sandbox Code Playgroud)

这回来了 ['aa']

如果我们有

import re
sequence="aabbaa"
rexp=re.compile("(aa|cc)+")
rexp.findall(sequence)
Run Code Online (Sandbox Code Playgroud)

我们得到 ['aa','aa']

为什么会有差异,为什么(第一个)我们得不到['aa','bb','aa']

谢谢!

python regex

12
推荐指数
2
解决办法
7870
查看次数

mypy 对 Callable 的类型检查认为成员变量是一个方法

当我通过以下代码运行 mypy 时,我看到几个错误:

from typing import Callable, Type


def class_creator(outside_reference: Callable[[str], None]) -> Type[object]:
    class SomeClass():
        reference: Callable[[str], None]

        def __init__(self) -> None:
            self.reference = outside_reference
            super().__init__()

        def __str__(self):
            self.reference("SomeClass instance")

    return SomeClass


def callback(string: str) -> None:
    print("Prepping: " + string)


instance = class_creator(callback)()
print(instance)
Run Code Online (Sandbox Code Playgroud)

以下是错误:

test.py:9: error: Cannot assign to a method
test.py:9: error: Invalid self argument "SomeClass" to attribute function "reference" with type "Callable[[str], None]"
test.py:9: error: Incompatible types in assignment (expression has type "Callable[[str], None]", variable …
Run Code Online (Sandbox Code Playgroud)

python mypy

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

boost :: hash_combine vs simple XOR'ing

使用boost库时,功能boost::hash_combine如下:

seed ^= hash_value(v) + 0x9e3779b9 + (seed << 6) + (seed >> 2);
Run Code Online (Sandbox Code Playgroud)

http://www.boost.org/doc/libs/1_46_1/doc/html/hash/reference.html#boost.hash_combine

与简单的XOR-ing相比,这种方法有什么优势?

使用XOR-ing,甚至可以使用散列函数将无序容器用作键,而这一个依赖于顺序.

c++ hash boost

8
推荐指数
1
解决办法
471
查看次数

蓝牙Ping延迟

我目前正在开展一个涉及Lego Mindstorms套件的项目.砖块是NXT,我对蓝牙ping率感到好奇.

我对它进行了100次ping测试并获得了一些有趣的结果.延迟似乎属于乐队.我增加到10,000 ping,它更清楚地突出了这一趋势.有谁知道可能导致这种情况发生的原因?

如果相关,发送器和接收器之间的距离约为3米.

10000 Ping散点图

latency bluetooth ping lego-mindstorms nxt

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

如何在不同的机器上构建和签署iOS应用程序?

我们有一个iOS应用程序,它是使用Jenkins运行的一系列Bash脚本构建的.就像今天的情况一样,我们使用以下命令构建一个xcarchive:

xcodebuild archive -workspace "..." -scheme "..." -configuration "Release" -archivePath "..."
Run Code Online (Sandbox Code Playgroud)

这将构建应用程序并使用配置文件中指定的证书对其进行签名,该配置文件是使用xcconfig设置的.完成后,我们将使用以下内容将其转换为IPA:

xcodebuild -archivePath "..." -exportArchive -exportOptionsPlist "${export_options_plist}" -exportPath "..."
Run Code Online (Sandbox Code Playgroud)

然后可以将此IPA上传到Hockey或App Store,具体取决于我们使用的xcconfig(我们将它们交换出来以创建不同的版本).

我们现在希望确保我们的证书尽可能安全.这意味着我们希望在一台机器上执行构建,而在另一台机器上执行签名.为此,我们需要这样做:

  1. 创建一个未签名的xcarchive
  2. 将xcarchive传输到签名计算机
  3. 将xcarchive变为签名的IPA

现在可以忽略第2步,所以我们只关注步骤#1和#3.

可以通过向命令添加参数CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO来创建无符号的xcarchive archive.

签署IPA要困难得多.我们假设我们可以再次创建IPA并使用该codesign命令在IPA中签署二进制文件.这有几个问题.首先是.entitlements我们为应用程序提供的文件不受尊重.我们必须将此作为标志传递给签名命令.然后我们意识到我们必须纠正.entitlements文件中的所有变量,因为Xcode不再用正确的值替换它们.然后我们意识到我们必须为每个扩展做到这一点.

我们最终得到了这一切,正确的权利,替换变量和所有签名,但当我尝试将新签名的IPA上传到曲棍球时,它拒绝了它.错误消息也没有帮助.

我们使用新系统对先前系统进行了构建,并且每个二进制文件都不同.我们不确定这是一个代码签名问题,还是只是一个时间戳更改,但是有变化.此外,我们发现我的扩展程序都是丢失的archived-expanded-entitlements.xcent文件,还有更多问题.

看起来我们肯定是错误的.我们显然不应该只是为了在不同的机器上签名而重新做所有事情,那么我们哪里出错了?我们如何在一台机器上构建并在另一台机器上签名?

PS我们当前的工具xcodebuild直接使用,但我们支持fastlane构建过程的其他部分,因此我们很乐意在需要时使用它.

更新:我们有一个"解决方案",即使用开发证书对Release版本进行签名,然后使用分发版本对其进行重新签名.这解决了权利被填充等所有问题,但仍然要求每个二进制文件被重新签名和权利组合等等所以我很好奇是否有更好的解决方案.

xcode code-signing xcodebuild ios

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

如何从 HTTP 触发的 Azure 函数返回 blob?

我正在尝试使用 Azure 函数从 blob 存储返回文件。就目前情况而言,我已经让它工作了,但是通过将整个 blob 读入内存,然后将其写回,它的工作效率很低。这适用于小文件,但一旦它们变得足够大,效率就非常低。

如何让我的函数直接返回 blob,而无需将其完全读入内存?

这是我目前正在使用的:

public static async Task<HttpResponseMessage> Run(HttpRequestMessage req, Binder binder, TraceWriter log)
{
    // parse query parameter
    string fileName = req.GetQueryNameValuePairs()
        .FirstOrDefault(q => string.Compare(q.Key, "name", true) == 0)
        .Value;

    string binaryName = $"builds/{fileName}";

    log.Info($"Fetching {binaryName}");

    var attributes = new Attribute[]
    {    
        new BlobAttribute(binaryName, FileAccess.Read),
        new StorageAccountAttribute("vendorbuilds")
    };

    using (var blobStream = await binder.BindAsync<Stream>(attributes))
    {
        if (blobStream == null) 
        {
            return req.CreateResponse(HttpStatusCode.NotFound);
        }

        using(var memoryStream = new MemoryStream())
        {
            blobStream.CopyTo(memoryStream);
            var response = …
Run Code Online (Sandbox Code Playgroud)

c# azure azure-blob-storage azure-functions

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

Arduino Uno上传失败

我收到了一个arduino uno和一些代码作为我正在进行的项目的一部分.我之前从未与他们合作过,所以这对我来说是一次全新的体验.

我在他们的网站上使用Arduino应用程序,当我编译代码时它工作正常.当我上传但是我收到错误:

avrdude: stk500_getsync(): not in sync: resp=0x41
Run Code Online (Sandbox Code Playgroud)

我已经看过为此返回的每一个谷歌结果,我没有得到任何地方.我尝试在3台不同的机器上上传,每台机器上至少有两种不同的操作系统.我怎么能接受这个代码呢?

提前致谢!

arduino arduino-uno

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

Makefile中的条件编译

我目前有一个make文件,其中一部分如下所示.

####################################################################
# Files                                                            #
####################################################################

C_SRC +=  \
CMSIS/CM3/CoreSupport/core_cm3.c \
CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/system_efm32.c \
efm32lib/src/efm32_assert.c \
efm32lib/src/efm32_system.c \
efm32lib/src/efm32_gpio.c \
efm32lib/src/efm32_cmu.c \
efm32lib/src/efm32_usart.c \
efm32lib/src/efm32_i2c.c \
efm32lib/src/efm32_dma.c \
efm32lib/src/efm32_timer.c \
efm32lib/src/efm32_int.c \
efm32lib/src/efm32_emu.c \
efm32lib/src/efm32_adc.c \
efm32lib/src/efm32_rtc.c \
radio.c \
led.c \
trace.c \
    main.c


S_SRC +=  \
CMSIS/CM3/DeviceSupport/EnergyMicro/EFM32/startup/cs3/startup_efm32.s

####################################################################
# Rules                                                            #
####################################################################

C_FILES = $(notdir $(C_SRC) )
S_FILES = $(notdir $(S_SRC) )
#make list of source paths, sort also removes duplicates
C_PATHS = $(sort $(dir $(C_SRC) ) )
S_PATHS …
Run Code Online (Sandbox Code Playgroud)

makefile

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

按下按钮时应用程序崩溃

我已经使用代码加载了一个新视图

UIViewController* newController = [[UIViewController alloc] initWithNibName:@"NFCController" bundle:nil];
[self.view addSubview:newController.view];
Run Code Online (Sandbox Code Playgroud)

这在新视图中完美加载.但是,我已将新视图中的按钮连接到类,以便我可以使用press事件来执行操作.但是,即使该方法仍然只是:

- (IBAction)donePress:(id)sender {}
Run Code Online (Sandbox Code Playgroud)

该应用程序仍然崩溃.我在main.m中的main方法上得到错误EXC_BAD_ACCESS.

有没有人有任何想法可能导致这个?我可以根据要求提供更多信息.

谢谢.

编辑:连接到方法的所有控件都会发生这种情况.

cocoa-touch objective-c ios

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