小编Kyl*_*ott的帖子

FB iOS登录 - "应用程序必须在安装时请求basic_info权限."

我在AppStore中有一个应用程序,调用openActiveSessionWithReadPermission,如下所示:

  [FBSession openActiveSessionWithReadPermissions:@[@"email"]
                                 allowLoginUI:YES
                            completionHandler:^(FBSession *session, FBSessionState state, NSError *error) {
                              [self sessionStateChanged:session state:state error:error];
                            }];
Run Code Online (Sandbox Code Playgroud)

SDK版本为3.5.升级到这个最新版本时,我错过了登录API中的一个关键更改,它需要在readPermissions数组中请求@"basic_info".它不再是隐含的.

它没有在升级指南中列出,但我确实在"技术指南"中找到了一个小的帮助框来讨论它.

如果您的应用在请求新用户的权限时未请求basic_info,您可能会收到开发者提醒.在这种情况下,您的应用程序无法使用Facebook应用程序本机登录对话框.要停止接收这些警报并利用此对话框,请为所有新用户请求basic_info,然后访问App Dashboard的高级设置以启用此迁移:''为iOS登录对话框指定basic_info''.

我在"为iOS登录对话框指定basic_info"的应用设置中看不到此类迁移.

所以,我的问题:

  • 此迁移是否已过期?它曾经存在过吗?
  • 在等待新版本获得Apple批准的同时,我能做些什么来解决这个问题?
  • 有没有办法让我暂时强制进行基于Web的身份验证(比如通过Safari)?

我有简单的修复(包括@"basic_info"),但是寻找一个补丁让我抱了一个星期左右.

有趣的是,通过iOS本机FB auth连接的人不会遇到此问题.它仅适用于通过FB原生应用程序连接的人员.

ios facebook-ios-sdk

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

AVVideoCompositionCoreAnimationTool 具有大量子层/动画的导出性能

我正在开发一个应用程序,该应用程序使用AVMutableVideoCompositionAVVideoCompositionCoreAnimationTool(通过导出AVExportSession)导出 2-10 秒视频的 CALayer 动画。

每个合成中可以有数百个 CAShapeLayer,并且每个层都附加有动画。

let animationLayer = CALayer()
animationLayer.frame = CGRectMake(0, 0, size.width, size.height)
animationLayer.geometryFlipped = true

// Add a ton of CAShapeLayers with CABasicAnimation's to animation Layer

let parentLayer = CALayer()
let videoLayer = CALayer()
parentLayer.frame = CGRectMake(0, 0, size.width, size.height)
videoLayer.frame = CGRectMake(0, 0, size.width, size.height)
parentLayer.addSublayer(videoLayer)
parentLayer.addSublayer(animationLayer)

mainCompositionInst.animationTool = AVVideoCompositionCoreAnimationTool(postProcessingAsVideoLayer: videoLayer, inLayer: parentLayer)

let exporter = AVAssetExportSession(asset: mixComposition, presetName: AVAssetExportPresetHighestQuality)
exportSession.outputURL = finalUrl
exportSession.outputFileType = AVFileTypeQuickTimeMovie
exportSession.shouldOptimizeForNetworkUse = …
Run Code Online (Sandbox Code Playgroud)

core-animation avfoundation ios

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

GKE Ingress基本认证(ingress.kubernetes.io/auth-type)

我正试图从github获得一个GKE入口来要求这个例子的基本身份验证.

入口工作正常.它路由到服务.但身份验证不起作用.允许所有流量通过.GKE还没有推出这个功能吗?我的规格显然有些不对劲?

这是入口:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: super-ingress
  annotations:
    ingress.kubernetes.io/auth-type: basic
    ingress.kubernetes.io/auth-secret: basic-auth
    ingress.kubernetes.io/auth-realm: "Authentication Required"
spec:
  rules:
  - host: zzz.host.com
    http:
      paths:
      - backend:
          serviceName: super-service
          servicePort: 9000
        path: /*
Run Code Online (Sandbox Code Playgroud)

basic-auth秘密:

$ kubectl get secret/basic-auth -o yaml

apiVersion: v1
data:
  auth: XXXXXXXXXXXXXXXXXXX
kind: Secret
metadata:
  creationTimestamp: 2016-10-03T21:21:52Z
  name: basic-auth
  namespace: default
  resourceVersion: "XXXXX"
  selfLink: /api/v1/namespaces/default/secrets/basic-auth
  uid: XXXXXXXXXXX
type: Opaque
Run Code Online (Sandbox Code Playgroud)

任何见解都非常感谢!

kubernetes google-kubernetes-engine

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

从远程位置加载 CGpath/UIBezierPath

UIBezierPath是否有任何可行/合理的方法来从远程 API传递必要的路径信息?我有兴趣在运行时下载形状信息。这是我的意思的梦想代码示例:

CGPath path = [APIClient downloadPathInfoForObject:clock];
UIBezierPath *bPath = [UIBezierPath bezierPathWithCGPath:path];
Run Code Online (Sandbox Code Playgroud)

如何从 API 发送路径信息,然后将其解压到 CGPath?

我可能最终会使用常规图像,但在整个应用程序中使用 CAShapeLayers 会很酷。有任何想法吗?

core-graphics ios uibezierpath

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