我正在尝试访问userInfo字典,application:didReceiveRemoteNotification()以便我可以根据收到的推送类型/是否收到任何推送来选择segue.我已经尝试过这两种方式(其他一些方式,我敢肯定,我现在还记不起来).
if let info = userInfo as? Dictionary<String,String> {
var notificationType = info["notificationType"]
}
if let info: String = userInfo["notificationType"] as? String {
//do stuff
}
Run Code Online (Sandbox Code Playgroud)
我没有得到任何错误,我根本没有得到任何东西.如果我打印userInfo字典,它只有一个成员["aps"],其中包含显示给用户的推送消息,所以即使我可以访问它,我也可以使用它进行条件化.
我尝试按照Parse API写入userData:
let data = ["notificationType" : "coffee"]
push.setData(data)
Run Code Online (Sandbox Code Playgroud)
所以一个问题是这似乎没有设置任何东西,但更大的问题是我无法获取任何userInfo数据.
你怎么访问这本字典?
编辑
一些打印声明结果:
println(userInfo["aps"]) => {alert = "You've Been Invited To A Coffee Order";}
println(userInfo) => [aps: {alert = "You've Been Invited To A Coffee Order";}, type: coffee]
println(userInfo[0]) => nil
let info = userInfo as? Dictionary<String,String>
println(info) => …Run Code Online (Sandbox Code Playgroud) 我Parse在我的iPhone应用程序中进行查询,但是在尝试Parse在我的Watch应用程序中执行相同的查询时遇到错误.
这是我的iPhone应用程序中的查询:
- (void)viewDidLoad {
// GMT Date from Phone
NSDate *gmtNow = [NSDate date];
NSLog(@"GMT Now: %@", gmtNow);
// Query Parse
PFQuery *query = [self queryForTable];
[query whereKey:@"dateGame" greaterThanOrEqualTo:gmtNow];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
if (!error) {
NSMutableArray *localMatchup = [@[] mutableCopy];
for (PFObject *object in objects) {
// Add objects to local Arrays
[localMatchup addObject:[object objectForKey:@"matchup"]];
// App Group
NSString *container = @"group.com.me.off";
NSUserDefaults *defaults …Run Code Online (Sandbox Code Playgroud) 我正在使用Parse REST API从Parse后端检索图像.当我获得图像文件URL时,它给我http://格式.但是,我想知道是否有可能以https格式从Parse获取图像.Parse后端是否提供此功能?
问候.
这段代码在Swift 1.1中运行良好...只是试图找出1.2中的变化使其不兼容:
@IBAction func load_click(sender: AnyObject) {
var query = PFQuery(className: "myClass")
query.getObjectInBackgroundWithId("MPSVivtvJR", block: { (object:PFObject!, error: NSError) -> Void in
let theName = object["name"] as String
let theAge = object["age"] as Int?
println(theName)
println(theAge)
})
}
Run Code Online (Sandbox Code Playgroud)
它给了我错误:无法使用类型'(String,block:(PFObject!,NSError) - > Void)的参数列表调用'GetObjectInBackgroundWithId'
有任何想法吗?谢谢!
我有一个使用Parse作为其后端的应用程序,并且具有Stripe集成.在Parse上,我在我的User类上存储了一个Stripe客户ID,我有一个自定义类,它有一个与之关联的费用令牌,以便客户可以创建服务请求,当提供者接受并满足该请求时,可以将费用发送到他们的收件人ID.
用户可以取消服务请求,或者提供商可以显示用户的属性,并且由于各种原因发现该属性不可用.在这种情况下,我们会收取用户收取的取消费用.
我想确保如果收取取消费用,则会向用户用于请求服务的同一张卡收取费用.我注意到,当我从客户ID中获取所有卡时,它们总是以相同的顺序显示,但是当我添加卡时,它并不总是将它添加到我获取时返回的数组的末尾牌.因此,如果我只是存储卡的索引,则用户可以添加新卡,并且它可能取代为服务收费的卡.如果我根据索引收取卡取消,可能会收取错误的卡.存储用于在Parse对象上创建充电令牌的cardID是否符合PCI标准,该对象包含有关服务的信息,因此当我调用我的函数来创建取消费用时,我正在为同一张卡充电?
感谢能够提供相关信息的任何人.
我正在使用Parse.com作为后端支持的应用程序.我使用ParseUser进行登录和注册,但现在我必须实现更改密码和忘记密码,但不知道如何实现它.请帮助我实现这些功能.
我用来登录ParseUser的代码如下:
ParseUser.logInInBackground(str_email2, str_password2, new LogInCallback() {
@Override
public void done(ParseUser user, ParseException e) {
dlg.dismiss();
if(e == null)
{
Log.d(">>>","ObjId>>"+user.getObjectId()+" Username>>>"+user.getUsername());
}
else
loginUnSuccessful();
}
});
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个函数,在应用程序启动时,应用程序检查是否有当前登录的Parse用户,如果这是真的,那么用户应该绕过登录屏幕并进入我的视图位于选项卡中查看控制器.如果当前没有用户登录,则打开登录视图,默认情况下会在应用程序加载时打开.我通过在我的登录视图的viewWillAppear函数中创建一个if语句来破解这个功能,如果这是真的,那么instantiateViewControllerWithIdentifier(),但由于我的名字没有标识符,我的应用程序立即崩溃.
reason: 'Storyboard (<UIStoryboard: 0x7ffbf3e82190>) doesn't contain a view controller with identifier 'ProfileSettingsViewController'
Run Code Online (Sandbox Code Playgroud)
现在我可能会遗漏一些东西,但是我在哪里设置视图控制器的标识符?或者我的班级名称是我目前假设的标识符?
在一个相关的问题中,这是实现我的目标的最佳方式吗?
这是我的登录控制器逻辑:
override func viewWillAppear(animated: Bool) {
var currentUser = PFUser.currentUser()
if currentUser != nil {
self.storyboard?.instantiateViewControllerWithIdentifier("ProfileSettingsViewController")
}
}
Run Code Online (Sandbox Code Playgroud)
以下是用户已登录时应打开的视图ProfileSettingsViewController.swift:
import UIKit
class ProfileSettingsViewController: UIViewController {
override func viewWillAppear(animated: Bool) {
self.tabBarController?.navigationItem.setHidesBackButton(true, animated:true);
//self.tabBarController?.navigationItem.title = "Profile Settings"
self.navigationController?.navigationItem.title = "ffff"
}
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
} …Run Code Online (Sandbox Code Playgroud) 我试图显示保存到解析属性"image"的用户图像.我已经能够显示我的用户名没有问题,但我似乎无法让我的图像出现.我应该将这些信息作为UIImage投射吗?我正确地调用文件存储的位置吗?
这是我的代码:
import UIKit
class SearchUsersRegistrationViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
var userArray : NSMutableArray = []
@IBOutlet var tableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
tableView.delegate = self
tableView.dataSource = self
loadParseData()
var user = PFUser.currentUser()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func loadParseData() {
var query : PFQuery = PFUser.query()
query.findObjectsInBackgroundWithBlock {
(objects:[AnyObject]!, error:NSError!) -> Void in
if error == nil {
if let objects = objects {
println("\(objects.count) …Run Code Online (Sandbox Code Playgroud) 我的故事板中有一个UIImageView,用户可以从手机中成功选择一个图像放置在ImageView中; 但是,我不知道如何从故事板到Parse.com.
任何代码将非常感激.有很多关于下载的教程,但最初没有保存.
我试图在我的Parse数据库中查询我的应用程序在Xcode中的表视图控制器.
我是初学者,但是我已将我添加的.swift文件中的代码片段发布到我的项目中.我试图在.swift文件中查询用户,但它没有从我的View Controller识别'PFUser'.
在我的ViewDidLoad方法中首次调用它之前,是否需要将PFUser声明为我的.swift文件中的内容?
有任何想法吗?
代码段: 
parse-platform ×10
swift ×6
ios ×5
android ×1
dictionary ×1
http ×1
https ×1
iphone ×1
objective-c ×1
pffile ×1
uiimageview ×1
watchkit ×1
xcode ×1