小编tka*_*kic的帖子

在iOS6上断开Facebook与应用程序的连接?

我正在使用最新的Facebook iOS SDK 3.1.1.我想让用户选择"断开"我们的应用程序与Facebook.我打电话给:

[[FBSession activeSession] closeAndClearTokenInformation];
Run Code Online (Sandbox Code Playgroud)

这似乎工作正常,但下次我打电话

[FBSession openActiveSessionWithReadPermissions:allowLoginUI:completionHandler:handler];
Run Code Online (Sandbox Code Playgroud)

它会立即给我一个令牌,而不会要求用户再次登录.我希望它再次要求用户进行身份验证.如果设备上没有设置Facebook帐户,它可以正常工作,因为它会打开Web浏览器,告诉用户他们已经对应用程序进行了身份验证并显示"正常"按钮.但如果设置它,它只是默默地再次获取令牌,因此用户"断开"应用程序没有任何效果.

是否有其他人有这个问题,你是如何处理它的?

facebook ios facebook-ios-sdk ios6

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

GPUImage视频,透明度超过UIView

我正在开发一个iOS项目,该项目使用AV-Out在第二个屏幕上的1280x720窗口中显示内容.

我有一个MPMoviePlayerController观点作为背景,并在其他不同的元素之上,如UIImagesUILabels.背景影片循环播放.

现在我想覆盖整个视图,包括所有可见元素和另一个具有透明度的全屏动画,以便只有部分底层视图可见.

我首先尝试了一个png动画UIImageView.我很惊讶地发现它实际上可以在iPhone5上运行,但当然pngs的体积非常大,以至于它使用了太多的内存并且在iPhone4s以下的所有内容都会崩溃.所以我需要另一种方式.

我想出了如何使用AVFoundation同时播放第二部电影.到现在为止还挺好.现在我可以播放叠加视频,但当然它不是透明的.

我还了解到,使用GPUImage库我可以GPUImageChromaKeyBlendFilter用来过滤视频中的颜色以使其透明,然后将其与另一个视频相结合.

我不明白的是在我的情况下实现它以获得我想要的结果的最佳方式.

我可以使用顶部视频下方的整个视图层次结构作为第一个输入,GPUImageChromaKeyBlendFilter并将绿屏风格视频作为第二个输入,并以720p显示结果吗?我该怎么办?

或者更好的方法是使用GPUImageChromaKeyFilter并只过滤绿屏风格的视频,并在所有其他视图之上的视图中播放?这段视频的背景是否会透明呢?

谢谢你的帮助!

iphone transparent video-processing ios gpuimage

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

根据字符串的长度更新 NSTextField 的宽度

我想制作一个标签,根据它将显示的字符串值的大小更改其大小。目前我正在这样做:

[tfScroll setStringValue:strScoller];
[tfScroll sizeToFit];
Run Code Online (Sandbox Code Playgroud)

然而,这是行不通的。我错过了什么?

macos xcode cocoa objective-c nstextfield

5
推荐指数
2
解决办法
3445
查看次数

更改用户后,iOS Dropbox API"当前不支持MPOAuthConnection"

我试图在iOS上使用Dropbox API,但当我尝试使用loadMetadata方法时,我被错误所困.

流程如下


1.link(UserA)

[[DBSession sharedSession] linkFromController:self];
Run Code Online (Sandbox Code Playgroud)

2.允许对Dropbox授权视图进行授权

3.unlink(UserA)

[[DBSession sharedSession] unlinkAll];
Run Code Online (Sandbox Code Playgroud)

4.link(UserB)

[[DBSession sharedSession] linkFromController:self];
Run Code Online (Sandbox Code Playgroud)

5.允许在Dropbox授权视图上授权

6.loadMetadata

[[self restClient] loadMetadata:path];
Run Code Online (Sandbox Code Playgroud)

但在这里我得到错误:

Terminating app due to uncaught exception 'Unsupported Signature Method', reason: 
'The signature method "(null)" is not currently support by MPOAuthConnection'
Run Code Online (Sandbox Code Playgroud)

loadMetaData确实工作正常,UserA但更改用户后无法正常工作.

我怀疑这种方式unlink可能还不够......但我不知道.

请给我任何建议,以解决问题.任何帮助将不胜感激.

oauth objective-c ios dropbox-api

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

didReceiveRemoteNotification未被调用

我在iOS/android中创建应用程序.当设备收到远程通知时,didReceiveRemoteNotification应该被呼叫.但它没有发生.我通过APNS发送消息的服务器端代码如下:

$deviceToken = $obj_listener->ref_id;

// Put your private key's passphrase here:
$passphrase = 'blahblah';
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', '/var/www/mobileapp/TestAppCK.pem');
stream_context_set_option($ctx, 'ssl', 'passphrase', $passphrase);

// Open a connection to the APNS server
$fp = stream_socket_client(
                           'ssl://gateway.sandbox.push.apple.com:2195', $err,
                           $errstr, 60, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT, $ctx);
if (!$fp){
    $this->log->debug("Failed to connect: $err $errstr" . PHP_EOL);
    exit("Failed to connect: $err $errstr" . PHP_EOL);
}

$badge_count = $obj_listener->badge_count + 1;

// Create the payload body
$body['aps'] = array(                  
                    //'alert' => 'Message received',
                    'sound' => …
Run Code Online (Sandbox Code Playgroud)

objective-c push-notification apple-push-notifications ios

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

当 Linux 内核内存负载变高时,常规文件的读/写性能如何变化?

看来对常规文件的写入/读取不能成为非阻塞的。我找到了以下支持参考:

摘自《Linux 编程接口:Linux 和 UNIX 系统编程手册》:

"--- 非阻塞模式可以与设备(例如,终端和伪终端)、管道、FIFO 和套接字一起使用。(因为管道和套接字的文件描述符不是使用 open() 获得的,所以我们必须使用 fcntl 启用此标志() F_SETFL 操作在第 5.3 节中描述。​​) O_NONBLOCK 对于常规文件通常被忽略,因为内核缓冲区高速缓存确保常规文件上的 I/O 不会阻塞,如第 13.1 节中所述。但是,O_NONBLOCK 对常规文件确实有影响使用强制文件锁定时的文件(第 55.4 节)。 ---”

来自 UNIX 环境中的高级编程第二版:

“--- 我们还说过,与磁盘 I/O 相关的系统调用并不被认为是慢的,即使磁盘文件的读取或写入可能会暂时阻塞调用者。---”

来自http://www.remlab.net/op/nonblock.shtml

“--- 常规文件总是可读的,也总是可写的。这一点在相关的 POSIX 规范中有明确规定。这一点我怎么强调都不为过。将常规文件置于非阻塞状态除了改变其中的一位之外绝对没有任何影响。文件标志。从常规文件读取可能需要很长时间。例如,如果它位于繁忙的磁盘上,I/O 调度程序可能会花费太多时间,以至于用户会注意到应用程序被冻结。尽管如此,非-阻塞模式不起作用。它根本不起作用。检查文件的可读性或可写性总是立即成功。如果系统需要时间来执行 I/O 操作,它会将任务从读取状态置于不可中断睡眠状态或者编写系统调用。---”

当内存足够可用时,通过内核缓冲执行读/写。

我的问题是:是否存在内核内存不足导致缓冲无法立即使用的情况?如果是,内核会做什么?简单地返回一个错误或执行一些惊人的技巧?

多谢你们!

linux filesystems io kernel

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

Rails 3控制器私有方法作为辅助方法

是否有必要在控制器中提及控制器中的私有方法helper_methods?喜欢

class PostsController < ApplicationController
  helper_method :check_something

  def new
    check_something
    @post = Post.new
  end

  def show
    @post = Post.find(params[:id])
  end

private

  def check_something
    redirect_to(root_path) and return if something
  end
end
Run Code Online (Sandbox Code Playgroud)

声明: helper_method :check_something要求吗?如果是这样的话?

当我从控制器调用私有方法时,操作方法是params私有helper方法还是方法?

ruby-on-rails

4
推荐指数
2
解决办法
5972
查看次数

将数据传递给parentViewController [iOS]

我有这个故事板: 在此输入图像描述

当我按下第一个视图控制器中的"Insegnante"按钮(它被称为newCourseViewController)时,它会显示一个带有教师列表的表格视图.当我按下一个老师(并tableView:canEditRowAtIndexPath:调用该方法)时,我希望将UITableViewController按下的对象"传递"到第一个视图控制器.

这是我的第一个视图控制器newCourseViewController.h的代码

#import <UIKit/UIKit.h>
#import "Teacher.h"

@interface newCourseViewController : UIViewController

@property (nonatomic , strong) Teacher *teacher;

@end
Run Code Online (Sandbox Code Playgroud)

这是我的第一个视图控制器newCourseViewController.m的代码(只有重要的代码)

#import "newCourseViewController.h"
#import "Courses.h"
#import "Teacher.h"
#import "addTeacherToCourseViewController.h"

@interface newCourseViewController ()
@property (weak, nonatomic) IBOutlet UITextField *textField;
@end

@implementation newCourseViewController


- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

-(void)setTeacher:(Teacher …
Run Code Online (Sandbox Code Playgroud)

objective-c parent-child uitableview ios segue

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

存折通行证无法使用“\r\n”输入换行符

我正在使用存折,并且有一些输入值,如下所示:

{
    "key" : "terms",
    "label" : "terms_contions",
    "value" : "1.aaaaaaa
               2.bbbbbbb 
               3.ccccccc
               4.ddddddd
} 
Run Code Online (Sandbox Code Playgroud)

我使用“enter”键,我想换行以查看该值,但传递显示错误。

所以我将其修改为:

{
    "key" : "terms",
    "label" : "terms_contions",
    "value" : "1.aaaaaaa 2.bbbbbbb 3.ccccccc 4.ddddddd
}
Run Code Online (Sandbox Code Playgroud)

一切都很好,但我不想 1. 2. 3. 4.一行。我想要4条线。我怎样才能做到这一点?

ios passbook

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

在sqlite中加入多对多的表

我有以下数据库架构:

create table people (
    id integer primary key autoincrement,
);

create table groups (
    id integer primary key autoincrement,
);
Run Code Online (Sandbox Code Playgroud)

我已经有哪些人是哪个组的成员在一个单独的文件中(让我们说在(person id,group id)的元组中.我如何构建我的数据库模式,以便它可以很容易地访问一个人的组,也很容易访问成员一组?它是困难和缓慢阅读,我目前拥有的元组,所以我想这是在数据库的形式.我不能拥有的东西member1,member2等栏目,因为人组中的数量是目前无限.

sql database sqlite

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