应用程序图标未显示在CallKit UI中

时间:2017-08-09 04:55:52

标签: ios ios10 callkit

我已经为CallKit iOS配置了我的提供商配置。其中我还设置了' iconTemplateImageData '用于在CallKit UI中显示应用程序图标。但是app图标没有显示。它显示一个白色方框。

enter image description here

提供商配置代码:

    CXProviderConfiguration *configuration = [[CXProviderConfiguration alloc] initWithLocalizedName:[NSString stringWithFormat:@"%@\n", _title]];
    configuration.maximumCallGroups = 1;
    configuration.maximumCallsPerCallGroup = 1;
    UIImage *callkitIcon = [UIImage imageNamed:@"AppIcon"];
    configuration.iconTemplateImageData = UIImagePNGRepresentation(callkitIcon);

    _callKitProvider = [[CXProvider alloc] initWithConfiguration:configuration];
    [_callKitProvider setDelegate:self queue:nil];

    _callKitCallController = [[CXCallController alloc] initWithQueue:dispatch_get_main_queue()];

我在' Images.xcassets '中使用了AppIcon图像。尺码: - 1x: 40 * 40, 2x: 80 * 80, 3x: 120 * 120

请说明为什么我的应用图标没有显示。

提前致谢。

1 个答案:

答案 0 :(得分:4)

这可能是因为您正在使用AppIcon图像,这是一个完全不透明的图像,即该图像的任何部分都不透明或alpha = 0。

要获得所需的效果,您必须使用部分(或大部分)透明的不同图像。本机内部调用UI仅使用您提供的图像的Alpha通道,因此它会忽略颜色。我建议您按照Speakerbox示例应用中的示例操作,并在图片资产目录中提供具有透明度的辅助PNG图像。