我正在尝试使用uisearchbar在parse.com上搜索我的对象并执行'findObjectsInBackgroundWithBlock'.我在输出中得到了正确的结果,但它们没有显示在我的表格中.
我之前没有使用块,我的代码工作,它得到了正确的结果,但移动得非常慢,我收到一个警告,"警告:正在主线程上执行长时间运行的Parse操作"
我以前一直在使用代码:
- (void)filterResults:(NSString *)searchTerm {
[self.searchResults removeAllObjects];
PFQuery *query = [PFQuery queryWithClassName: @"Items"];
[query whereKeyExists:@"itemName"];
[query whereKeyExists:@"itemDescription"];
[query whereKey:@"tags" containsString:searchTerm];
NSArray *results = [query findObjects];
NSLog(@"%@", results);
NSLog(@"%u", results.count);
[self.searchResults addObjectsFromArray:results];
Run Code Online (Sandbox Code Playgroud)
}
所以现在我正在尝试使用findObjectsInBackgroundWithBlock,我之前没有使用过块,所以这是我需要帮助的地方,这是我的新代码:
- (void)filterResults:(NSString *)searchTerm {
[self.searchResults removeAllObjects];
PFQuery *query = [PFQuery queryWithClassName: @"Items"];
[query whereKey:@"tags" containsString:searchTerm];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
NSLog(@"%@", objects);
NSLog(@"%u", objects.count);
[self.searchResults addObjectsFromArray:objects];}];
Run Code Online (Sandbox Code Playgroud)
这是我的一些代码
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
if (tableView == self.tableView) {
return self.objects.count;
} else {
return self.searchResults.count; …Run Code Online (Sandbox Code Playgroud) 我的表"Attack"中有2个指针对象(指向ParseUser).看起来这些指针对象需要一段时间才能被检索.因为我的代码直接没有用,并且给了我异常:
java.lang.IllegalStateException: ParseObject has no data for this key. Call fetchIfNeeded() to get the data.
Run Code Online (Sandbox Code Playgroud)
然后,我使用try-catch块对fetchIfNeeded函数进行了必要的操作:
ParseObject battle = null;
try {
battle = objects.get(0).fetchIfNeeded();
} catch (ParseException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
ParseUser attacker1 = battle.getParseUser("Attacker");
Log.i("dontest",attacker1.getUsername());
Run Code Online (Sandbox Code Playgroud)
它仍然返回相同.我甚至检查isDataAvailable功能,它返回true.Any方式围绕这个?
PS:我的查询返回了我用size()函数检查的1行.
这是描述fetchIfNeeded()函数的文档.
我已成功将Parse的推送通知集成到我的Android项目中.如果我收到一个说"开始"的推送通知,我想要一些如何在我的应用程序中触发事件的指导?
因此,如果我收到通知并且它只包含值"start",那么它将触发事件来执行某些操作.
我是Parse的新手,我非常感谢帮助人!
我想从Parse数据库中读取地理位置,并在地图中显示其他用户的位置.
我将位置写入解析数据库:
[PFGeoPoint geoPointForCurrentLocationInBackground:^(PFGeoPoint *geoPoint, NSError *error) {
if (!error) {
[[PFUser currentUser] setObject:geoPoint forKey:@"currentLocation"];
[[PFUser currentUser] saveInBackground];
Run Code Online (Sandbox Code Playgroud)
然后我读了用户名和位置
PFQuery *User = [PFUser query];
[User selectKeys:@[@"username"]];
[User findObjectsInBackgroundWithBlock:^(NSArray *results, NSError *error) {
Name = results;
}];
PFQuery *Location = [PFUser query];
[Location selectKeys:@[@"currentLocation",]];
[Location findObjectsInBackgroundWithBlock:^(NSArray *location, NSError *error)
{
Coordinaten = location;
}];
NSLog(@" %@ hat die %@",Name , Coordinaten);
// ann.title = [Name objectAtIndex:1] ;
// ann.coordinate = [[Coordinaten objectAtIndex:1] coordinate];
// [MapView addAnnotation:ann];
Run Code Online (Sandbox Code Playgroud)
第一个问题是,NSLog什么都没显示.当我复制NSLog下面的时候 …
结果是未加载符号,因此我无法使用Parse,尝试插入#import会导致找不到文件错误。我遵循了Parse网站上现有项目的快速入门指南,并添加了所需的所有库(例如AudioToolbox Framework等),所以这不是问题。
我得到的确切警告是:
ld:警告:忽略文件/Users/XXXXXXX/Documents/YYYYYYYY/Parse.framework/Parse,文件是为不受支持的文件格式而构建的(0x56 0x65 0x72 0x73 0x69 0x6F 0x6E 0x73 0x2F 0x43 0x75 0x72 0x72 0x65 0x6E不是xx74)链接的体系结构(i386):/ Users / XXXXXXX / Documents / YYYYYYYY / Parse.framework / Parse
该项目是在Xcode 5.02中创建的,并且针对ios 6.1,请告知是否需要其他信息。我下载了Parse入门项目,并且构建良好,但是似乎已设置了一些自定义体系结构,所以也许有一个构建设置可以尝试在项目中进行更改?
我使用parse.com在Android上使用此代码进行Twitter登录
Parse.initialize(this, "zzzzz", "zzzzz");
ParseTwitterUtils.initialize("zzzz","zzzzz");
ParseTwitterUtils.logIn(this, new LogInCallback()
{
@Override
public void done(ParseUser user,ParseException err)
{
if (user == null)
{
Log.d("MyApp","Uh oh. The user cancelled the Twitter login.");
}
else if (user.isNew())
{
Log.d("MyApp","User signed up and logged in through Twitter!");
}
else
{
Log.d("MyApp", "User logged in through Twitter!"+user.toString());
}
}
});
Run Code Online (Sandbox Code Playgroud)
登录是可以的,我查看后端,有我的Twitter帐户.如何在我的Android应用程序中获取此数据?
谢谢!
它已经过了1周,我仍然停留在PFImageView上.我重新制作了一切.从UITableView更改为PFQueryTableView,然后尝试使用UITableViewCell显示图像,然后使用PFTableViewCell,并且在每种方法中,只有用于显示的内容才是标签.每当我运行我的应用程序时,我都会因为这行而崩溃(SIGABRT):`
崩溃线
Run Code Online (Sandbox Code Playgroud)cell.imagevieww.file= [object objectForKey:@"ImageURL"]; [cell.imagevieww loadInBackground];
任何人都可以帮我解决这个问题吗?非常感谢
TableViewController.h
Run Code Online (Sandbox Code Playgroud)#import <Parse/Parse.h> #import "Customcell.h" #import "DetailViewController.h" @interface TableeViewController : PFQueryTableViewController { NSArray *colorsArray; } @property (strong, nonatomic) IBOutlet UITableView *colorsTable; @end
TableViewController.m
#import "TableeViewController.h"
#import "TableViewCell.h"
#import "DetailViewController.h"
@interface TableeViewController ()
@end
@implementation TableeViewController
@synthesize colorsTable;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (id)initWithCoder:(NSCoder *)aCoder
{
self = [super initWithCoder:aCoder];
if (self) {
// The className …Run Code Online (Sandbox Code Playgroud) 所以我正在对一个对象进行一个简单的查询,我只是想知道为什么当我在查询对象上调用.find()方法时,它返回成功,即使它是一个空数组?这是我的代码示例.
var HuntObject = Parse.Object.extend("HuntObject",{
defaults: {
title: "hunt",
startDate: "",
endDate: "",
prize: "",
players: [],
items: []
}
});
var huntinfo = new Parse.Query(HuntObject);
var user = Parse.User.current().get("username");
huntinfo.notEqualTo("players" , user);
huntinfo.equalTo("title", huntItem);
huntinfo.find({
success: function(results) {
console.log("results")
Run Code Online (Sandbox Code Playgroud)
控制台日志会给我结果= []我想我可以检查结果是否是一个空数组,然后从那里去,但我认为这是使用.find的原因.任何帮助,将不胜感激.
我想使用查询发送推送通知
我有这个问题
$ages = array(18,19,20,21)
$parseQuery = new parseQuery('_User');
$parseQuery->whereContainedIn('age', $ages);
$result = $parseQuery->find();
Run Code Online (Sandbox Code Playgroud)
我想向他们发送推送通知我应该使用安装还是另一种方式?谢谢
更新:
我正在使用这个sdk https://github.com/apotropaic/parse.com-php-library
从我返回的代码列表中我将向他们发送通知我想将推送通知发送到_User类
我有问题通过解析框架发布到twitter.我用这个登录了我的用户,
[PFTwitterUtils linkUser:[PFUser currentUser]];
Run Code Online (Sandbox Code Playgroud)
然后我尝试使用这个发布到Twitter,
NSString *bodyString = @"this is a test";
// Explicitly percent-escape the '!' character.
bodyString = [bodyString stringByReplacingOccurrencesOfString:@"!" withString:@"%21"];
NSURL *url = [NSURL URLWithString:@"https://api.twitter.com/1.1/statuses/update.json"];
NSMutableURLRequest *tweetRequest = [NSMutableURLRequest requestWithURL:url];
tweetRequest.HTTPMethod = @"POST";
tweetRequest.HTTPBody = [bodyString dataUsingEncoding:NSUTF8StringEncoding];
[[PFTwitterUtils twitter] signRequest:tweetRequest];
NSURLResponse *response = nil;
NSError *error = nil;
// Post status synchronously.
NSData *data = [NSURLConnection sendSynchronousRequest:tweetRequest
returningResponse:&response
error:&error];
// Handle response.
if (!error) {
NSLog(@"Response: %@", [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
} else {
NSLog(@"Error: %@", error); …Run Code Online (Sandbox Code Playgroud) parse-platform ×10
ios ×5
android ×3
twitter ×2
geolocation ×1
geopoints ×1
imageview ×1
ios7 ×1
iphone ×1
java ×1
javascript ×1
objective-c ×1
pfquery ×1
php ×1
push ×1
sigabrt ×1
xcode ×1