Introduction


DGBootstrap is the library that includes the four basic libraries of the Digipolitan framework, DGFoundation, DGSQL, DGSQLite and DGNetwork. He is made to allow you to develop an application using all our non GUI features (Dependency injection, cache repositories, model factories etc…)


It automatically configure the DependencyInjectorManager to allow the use of SQLite and some other features like the UsageManager (to execute a tast at the first launch or every x launches)



This sample’s purpose is to show you the different steps to create a simple app using DGBootstrap and be ready for your project development.



Installation


Cocoapods


1. You can integrate DGBootstrap via CocoaPods, simply declare a dependency to the framework you want in your PodFile. Here is a sample integration for DGBootstrap :

		
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '5.1.1'

pod 'DGBootstrap'
		
	

2. Open the terminal, to browse to your project directory and type

		
pod install
		
	

3. You need to close your project and open the workspace generating by Cocoapod.



Nota : For more information about CocoaPods we suggest you to visit their website : http://cocoapods.org

Drag & Drop

1. You need to download the DGBootstrap framework.


Then you have to drag and drop the framework into your project to use it.



Bootstrap iOS - Step 1


2. You also need to add SystemConfiguration.framework and libsqlite3.dylib into your project

Bootstrap iOS - Step 2



Bootstrap iOS - Step 3 Bootstrap iOS - Step 4




3. Edit your AppDelegate by extending DGBAppDelegate

		
#import <DGBootstrap/DGBAppDelegate.h>

@class UIWindow;

@interface AppDelegate : DGBAppDelegate

@property (strong, nonatomic) UIWindow *window;

@end
		
	

4. You need to implement the method bootApplication into DGBAppDelegate.m

		
- (void) bootApplication {
	/** 
	Put your custom code here.
	For example you can instantiate your custom viewcontroller and attach it to the window.
	*/
}
		
	

5. You need to modify the default implementation of application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

		
- (BOOL) application:(UIApplication *) application didFinishLaunchingWithOptions:(NSDictionary *) launchOptions {
	return [super application:application didFinishLaunchingWithOptions:launchOptions];
}
		
	

6. Take a cup of coffee and have FUN