小编Sun*_*nny的帖子

合并两个iOS核心数据持久存储的有效方法是什么?

在我们正在开发的应用程序中,我们使用Core Data和sqlite后备存储来存储我们的数据.我们的应用程序的对象模型很复杂.此外,我们的应用程序提供的数据总量太大,无法容纳到iOS(iPhone/iPad/iPod Touch)应用程序包中.由于我们的用户通常只对数据的一个子集感兴趣,因此我们对数据进行了分区,使得应用程序附带了一个子集(尽管大约100 MB)的数据对象.应用包.我们的用户可以选择在通过iTunes应用内购买支付额外内容后,从我们的服务器下载其他数据对象(大小约为5 MB到100 MB).增量数据文件(存在于sqlite后备存储中)使用与bundle附带的数据相同的xcdatamodel版本; 对象模型没有任何变化.增量数据文件作为gzip sqlite文件从我们的服务器下载.我们不希望通过随应用程序发送增量内容来扩大我们的应用程序包.此外,我们不希望依赖webservice上的查询(因为复杂的数据模型).我们测试了从服务器下载的增量sqlite数据.我们已经能够将下载的数据存储添加到应用程序的共享persistentStoreCoordinator中.  

{
       NSError *error = nil;
       NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:
                                [NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption, 
                                [NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption, nil];

       if (![__persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:defaultStoreURL options:options error:&error])
       {            
           NSLog(@"Failed with error:  %@", [error localizedDescription]);
           abort();
       }    

       // Check for the existence of incrementalStore
       // Add incrementalStore
       if (incrementalStoreExists) {
           if (![__persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:incrementalStoreURL options:options error:&error])
           {            
               NSLog(@"Add of incrementalStore failed with error:  %@", [error localizedDescription]);
               abort();
           }    
       }
 }
Run Code Online (Sandbox Code Playgroud)

  但是,这样做有两个问题.

  1. 数据获取结果(例如,使用NSFetchResultController)显示来自incrementalStoreURL的数据附加到defaultStoreURL的数据末尾.
  2. 一些对象是重复的.在我们的数据模型中有许多具有只读数据的实体; …

merge core-data objective-c object-graph core-data-migration

10
推荐指数
1
解决办法
5541
查看次数

让Django 1.7在Google App Engine上工作

任何人都可以帮助我们指出如何让Django> 1.5在Google App Engine上工作吗?我见过很多人声称他们有Django 1.6工作.我们想要运行1.6或1.7.我在这里搜索了有关如何设置它的说明.到目前为止没有运气.

更新:在我们的开发机器中,我们安装了Django 1.7(/ user/local和virtualenv).但是,如果我们修改GAE yaml以使用Django 1.7,我们会收到以下错误消息:

google.appengine.api.yaml_errors.EventError: django version "1.7" is not supported, use one of: "1.2", "1.3", "1.4", "1.5" or "latest" ("latest" recommended for development only)   in "./app.yaml",
Run Code Online (Sandbox Code Playgroud)

我们的/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib目录中的版本1.9.12 GoogleAppEngine sdk安装显示了列出的以下Django版本:

  1. django-0.96 django-1.2 django-1.3 django-1.4 django-1.5

我的问题与如何在Google App Engine上为Django 1.7正确设置我们的开发环境以及如何确保我们在生产中部署到Google App Engine时使用Django 1.7成功部署我们的应用程序有关.当我们部署应用程序时,如何让Django 1.7在GAE上部署?

python django google-app-engine google-cloud-sql

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

如何使用PHP在我的服务器上验证Android生成的令牌?

好吧,我一直试图获得Tim Bray的文章"从Android应用程序验证后端呼叫"所描述的精彩必杀技.我可以通过调用GoogleAuthUtil.getToken()从我的Android应用程序中成功获取令牌.我将令牌传递给我的php服务器作为头部授权承载字段.这是我被卡住的地方.

我现在该怎么做才能验证令牌是从我的Android应用程序生成的,用于与我的服务器项目相同的项目?如何从令牌获取user_id?谢谢.

在谷歌控制台上我的php服务器和Android应用程序都在同一个项目上.在我的php服务器上,我可以链接android/google-api-php-client/src/Google_Client.php和android/google-api-php-client/src/contrib/Google_PlusService.php库代码.

php android google-play-services google-oauth google-api-php-client

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