AppDelegate.cpp Example File

demos/SimpleGameCocosNinja/cocos2d-x-Comparison/Classes/AppDelegate.cpp
 #include "AppDelegate.h"
 #include "HelloWorldScene.h"
 #include "SimpleAudioEngine.h"

 USING_NS_CC;

 AppDelegate::AppDelegate() {

 }

 AppDelegate::~AppDelegate()
 {
 }

 bool AppDelegate::applicationDidFinishLaunching() {
     // initialize director
     CCDirector *pDirector = CCDirector::sharedDirector();

     pDirector->setOpenGLView(CCEGLView::sharedOpenGLView());

     CCSize screenSize = CCEGLView::sharedOpenGLView()->getFrameSize();
     CCSize designSize = CCSizeMake(480, 320);
     std::vector<std::string> searchPaths;

     if (screenSize.height > 320)
     {
         searchPaths.push_back("hd");
         searchPaths.push_back("sd");
         pDirector->setContentScaleFactor(640.0f/designSize.height);
     }
     else
     {
         searchPaths.push_back("sd");
         pDirector->setContentScaleFactor(320.0f/designSize.height);
     }

     CCFileUtils::sharedFileUtils()->setSearchPaths(searchPaths);

     CCEGLView::sharedOpenGLView()->setDesignResolutionSize(designSize.width, designSize.height, kResolutionNoBorder);

     // turn on display FPS
     pDirector->setDisplayStats(true);

     // set FPS. the default value is 1.0/60 if you don't call this
     pDirector->setAnimationInterval(1.0 / 60);

     // create a scene. it's an autorelease object
     CCScene *pScene = HelloWorld::scene();

     // run
     pDirector->runWithScene(pScene);

     return true;
 }

 // This function will be called when the app is inactive. When comes a phone call,it's be invoked too
 void AppDelegate::applicationDidEnterBackground() {
     CCDirector::sharedDirector()->stopAnimation();

     // if you use SimpleAudioEngine, it must be pause
         CocosDenshion::SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();
 }

 // this function will be called when the app is active again
 void AppDelegate::applicationWillEnterForeground() {
     CCDirector::sharedDirector()->startAnimation();

     // if you use SimpleAudioEngine, it must resume here
     CocosDenshion::SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();
 }

Voted #1 for:

  • Easiest to learn
  • Most time saving
  • Best support

Develop Cross-Platform Apps and Games 50% Faster!

  • Voted the best supported, most time-saving and easiest to learn cross-platform development tool
  • Based on the Qt framework, with native performance and appearance on all platforms including iOS and Android
  • Offers a variety of plugins to monetize, analyze and engage users
FREE!
create apps
create games
cross platform
native performance
3rd party services
game network
multiplayer
level editor
easiest to learn
biggest time saving
best support