我有一个问题,我试图在我的项目中包含一个名为the的库ParseLoginUI.
问题是它使用提供的标记而不是编译.我相信提供的标记意味着项目需要提供这种依赖,以便库工作,而不是这个库编译库本身.
所以在我的Android库中,它像这样引用了Facebook SDK.
provided 'com.facebook.android:facebook-android-sdk:4.0.1'
Run Code Online (Sandbox Code Playgroud)
然后在我的主要模块mobile/build.gradle中编译Facebook sdks就像这样.
compile 'com.facebook.android:facebook-android-sdk:4.0.1'
Run Code Online (Sandbox Code Playgroud)
我一直在关注安装此库的指南,这就是你的意思.这是我得到的警告,阻止我从ParseLoginUI/build.gradle文件抛出的编译(提供它的那个).
Warning:Project ParseLoginUI: provided dependencies can only be jars. com.facebook.android:facebook-android-sdk:aar:4.0.1 is an Android Library.
Run Code Online (Sandbox Code Playgroud)
该库的文档有一个修复:
如果您使用的是gradle 1.1.0或更高版本,则可能会遇到"警告:Project ParseLoginUI:提供的依赖项只能是jar.com.facebook.android:facebook-android-sdk:aar:4.0.1是Android库".这是一个开放的android gradle构建工具问题.目前workround使用的是gradle 1.0.0.
很公平,但我不想降级我的gradle(目前正在运行v1.2.3)只是为了解决这个问题.必须有一种解决方法或更好的方法.
我的问题
如何在库模块和主模块中包含Facebook SDK?
android gradle parse-platform build.gradle android-gradle-plugin
我的应用程序中有以下结构:
MessageRecipients -> Message -> User
Message -> Activity
Run Code Online (Sandbox Code Playgroud)
其中 - >代表一个指针.我已经分离出邮件和邮件收件人表,因为我需要捕获每个收件人是否已读取邮件.
我想要查询的是查找收件人的所有邮件.所以我需要在MessageRecipients查询中包含消息,但我还想包含嵌套的User和Activity对象.
var MessageRecipient = new Parse.Query('MessageRecipient');
messageQuery.equalTo('recipient', query.recipient);
messageQuery.include('message');
Run Code Online (Sandbox Code Playgroud)
消息返回时没有填充活动和发件人.我尝试调用messageQuery.include('activity'),但由于活动不在正确的表上,因此无效.
有没有办法进行此查询,还是必须对嵌套对象进行单独查询?
这应该工作.
这是尝试解决这个问题的众多尝试之一
myTrainingSessions[indexPath.row].unpinInBackgroundWithBlock{ (succ, e) -> Void in
if succ == true {
// just remove from table view etc
self.myTrainingSessions[indexPath.row].deleteEventually()
self.myTrainingSessions.removeAtIndex(indexPath.row)
self.tableView.deleteRowsAtIndexPaths([indexPath], withRowAnimation: .Fade)
// Shows that my object is still in datastore!
// object should be UNPINNED - but appers in this result....
var query = PFQuery(className:TrainingSession.parseClassName())
query.whereKey(self.userType(), equalTo: PFUser.currentUser())
query.orderByDescending("createdAt")
query.fromLocalDatastore().ignoreACLs()
query.findObjectsInBackgroundWithBlock { (objects, error) -> Void in
if error != nil { return }
if let result = objects as? [TrainingSession] {
println("local results")
println(result)
} …Run Code Online (Sandbox Code Playgroud) 我有一个自定义对象"会议"我正在添加数组中的所有对象.我想要做的是从Meeting.meetingDate排序数组.
我也在使用Parse,我有两个查询并将结果放入一个数组中.
我能够将数据添加到"meetingData",但不能对其进行排序.
有人能帮忙吗?
所以我的阵列是:
var meetingsData = [Meeting]()
Run Code Online (Sandbox Code Playgroud)
会议班是:
public class Meeting: PFObject, PFSubclassing
{
@NSManaged public var meetingTitle: String?
@NSManaged public var meetingLocation: String?
@NSManaged public var meetingNotes: String?
@NSManaged public var meetingDuration: String?
@NSManaged public var createdBy: User?
@NSManaged public var meetingTime: NSDate?
@NSManaged public var meetingDate: NSDate?
}
Run Code Online (Sandbox Code Playgroud)
数组的内容如下:
<Meeting: 0x125edd040, objectId: xIqx7MoRd6, localId: (null)> {
createdBy = "<PFUser: 0x125d627c0, objectId: RKCWJRj84O>";
meetingDate = "2015-08-29 17:07:12 +0000";
meetingDuration = "2 hours 2 mins";
meetingLocation = 4th …Run Code Online (Sandbox Code Playgroud) 我一直在使用Parse来检索列表视图的数据.不幸的是,他们默认将请求限制为100,最大为1000.在班上,我已经超过了1000.我在网上找到了一个链接,显示了在iOS上进行操作的方法,但是如何在Android上进行操作呢?网页链接
我目前正在循环中将所有数据添加到一个arraylist中,直到所有项目都完成(100)然后将它们添加到列表中
我们正在使用Parse.com构建iOS应用程序,但仍无法找到有效备份数据的正确方法.
作为前提,我们拥有并将拥有大量数据存储行.假设我们有一个100万行的类,假设我们备份它,然后想要在危险情况(如生产数据丢失)之后将其带回Parse.
我们考虑的几个解决方案如下:
1)使用外部服务器进行备份
备注: - 使用REST API不断将数据备份到远程MySQL服务器(我们选择MySQL进行自定义分析,因为使用MySQL处理数据的速度更快更容易)
ImportBack:a) - 从MySQL备份重新创建JSON对象,并使用REST API发送回Parse.假设我们使用批处理操作,允许使用1个查询创建50个同时对象,并假设每个查询需要1秒,1百万个数据集需要5.5小时才能转移到Parse.
b) - 从MySQL备份重新创建一个JSON文件,并使用仪表板手动导入数据.我们用这种方法尝试了700,000条记录文件:加载指示器停止并显示左侧窗格中的行数大约需要2小时,但现在它从未在右侧窗格中打开(它表示"操作超时" )自上传开始以来已超过6小时.
因此我们不能依赖1.b,而1.a似乎需要很长时间才能从灾难中恢复(如果我们有1000万条记录,那么它将像55小时= 2.2天).
现在我们考虑以下事项:
2)不断将数据复制到另一个应用程序
在Parse中创建以下内容: - 生产应用程序:A - 复制应用程序:B因此,当A处于生产阶段时,每个查询都将复制到B(不断使用后台作业).缺点当然是它会消耗A的突发限制,因为它只会使查询量增加一倍.所以不是理想的扩大规模.
我们想要的是类似AWS RDS的东西,它提供了每日自动备份的选项.我想知道这对Parse来说有多难,因为它基于AWS infra.
如果您对此有任何想法,请告诉我,很高兴分享诀窍.
PS:
我们已经注意到上述想法中的一个重要缺陷.
如果我们使用REST API进行复制,则所有类的所有objectIds都将被更改,因此每个1to1或1toMany关系都将被破坏.
所以我们考虑为每个对象类放置一个uuid.
这个方法有什么问题吗?我们想要实现的一件事是query.include("ObjectName")(或者在Obj-C"includeKey"中),但我想如果我们不将我们的app逻辑基于objectId,那将是不可能的.
寻找解决此问题的方法; 但是,基于uuid的管理能否在Parse的数据存储逻辑下运行?
我下载了新的iOS Parse API(1.6.4)并尝试构建我的项目.当我这样做时,我收到此错误:
Undefined symbols for architecture arm64" "_BFTaskMultipleExceptionsException", referenced from:
___53+[PFObject(Private) deleteAllAsync:withSessionToken:]_block_invoke214 in Parse(PFObject.o)
___65+[PFObject(Private) _deepSaveAsync:withCurrentUser:sessionToken:]_block_invoke311 in Parse(PFObject.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)
截图:

我正在创建一个使用远程数据库,会话(登录/注册),服务器端代码和推送通知的iOS应用程序.
我发现这个名为Parse的 SDK 可以处理托管,数据库,云代码,推送通知,会话等所有服务器...(所以我需要做的一切)
Parse SDK是否值得使用(成本方面)?
这些是旧计划......
如果超过100万个请求/月,你认为它会收回成本吗?我必须支付199美元/月的版本?如果我计划通过广告使用我的应用赚钱怎么办?它会赚到足够的收入吗?
假设每个人每天访问数据库5次,即每月150次,这意味着我需要6666人才能升级.平均而言,如果我有很多人每天查看广告,广告是否会支付199美元/月的费用?(另外,考虑到Parse负责安全性,服务器成本和维护)
另一件需要考虑的事情是,创建(和维护)是多么困难/昂贵:
使用Parse时,稳健性,安全性和易维护性是否有助于收回成本?
谢谢!
我正在开发一个使用Aviary SDK的摄影应用程序,一切都运行良好,但我们认为推送通知需要包含在项目中.基本上如果我包含解析框架,然后尝试构建,我会遇到大量错误.
Undefined symbols for architecture armv7:
"_ACAccountTypeIdentifierTwitter", referenced from:
-[PF_Twitter getLocalTwitterAccountAsync] in Parse(PF_Twitter.o)
"_OBJC_CLASS_$_SLRequest", referenced from:
objc-class-ref in Parse(PF_Twitter.o)
"___cxa_get_exception_ptr", referenced from:
google_breakpadPFC_::ExceptionHandler::InstallHandler() in ParseCrashReporting(exception_handler.o)
"std::string::find_first_not_of(char const*, unsigned long, unsigned long) const", referenced from:
MacStringUtilsPFC_::IntegerValueAtIndex(std::string&, unsigned int) in ParseCrashReporting(string_utilities.o)
"std::string::substr(unsigned long, unsigned long) const", referenced from:
MacStringUtilsPFC_::IntegerValueAtIndex(std::string&, unsigned int) in ParseCrashReporting(string_utilities.o)
"_OBJC_CLASS_$_ACAccountStore", referenced from:
objc-class-ref in Parse(PF_Twitter.o)
"std::string::find_first_of(char const*, unsigned long, unsigned long) const", referenced from:
MacStringUtilsPFC_::IntegerValueAtIndex(std::string&, unsigned int) in ParseCrashReporting(string_utilities.o)
"___cxa_end_catch", referenced from:
google_breakpadPFC_::ExceptionHandler::InstallHandler() in ParseCrashReporting(exception_handler.o)
_BreakpadReleasePFC_ in …Run Code Online (Sandbox Code Playgroud) 我收到以下错误:方法getApplicationContext()未定义方法findViewById(int)未定义类型Fragment1
当我的类扩展到一个Activity而不是片段时,这些错误似乎被消除了,但重要的是这个活动仍然是一个片段,所以我不太清楚如何解决这个问题.
任何帮助将不胜感激.提前致谢.
下面是代码
public class Fragment1 extends Fragment {
private String currentUserId;
private ArrayAdapter<String> namesArrayAdapter;
private ArrayList<String> names;
private ListView usersListView;
private Button logoutButton;
String userGender = ParseUser.getCurrentUser().getString("Gender");
String activityName = ParseUser.getCurrentUser().getString("ActivityName");
Number maxDistance = ParseUser.getCurrentUser().getNumber("Maximum_Distance");
String userLookingGender = ParseUser.getCurrentUser().getString("Looking_Gender");
Number minimumAge = ParseUser.getCurrentUser().getNumber("Minimum_Age");
Number maximumAge = ParseUser.getCurrentUser().getNumber("Maximum_Age");
Number userage = ParseUser.getCurrentUser().getNumber("Age");
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
if (container == null){
return null;
}
return (LinearLayout)inflater.inflate(R.layout.fragment1_layout,
container,false);
logoutButton = …Run Code Online (Sandbox Code Playgroud) java android android-fragments android-activity parse-platform