Mobile App Development in Lucknow


cropped-android-apps-111.jpg

Hey,

Lucknow is being hub of software technology and mobile application development. Day by day increasing list of software companies in Lucknow, is showing that there is a lot of opportunity to grow. We are listing some mobile development companies operating in Lucknow.

1. STPL

Website: https://www.stpl.biz/

2. Laikor infosolution pvt ltd

Website: https://www.laitkor.com/

3. Unicode System

Website: http://www.unicodesystems.in/

4.  NewGenApp

Website: http://www.newgenapps.com/

5. AlcanzarSoftware

Website: http://www.alcanzarsoft.com/

6. 18Pixel

Website: https://www.18pixels.com/

7.Medma Infomatix

Website: http://www.medma.in/

8.Erectorlab

Website: http://erectorslab.com/

9.Erectorlab

Website: http://erectorslab.com/

Advertisements

How to create framework in Xcode


1. Step 1 :: Create a Cocoa Touch Static Library

Go  Xcode—> New Project —> iOS —> Framework & Library —> Cocoa Touch Static Library —> Named you app .

Screen Shot 2015-05-14 at 2.04.37 PM

Step : 2 Delete .m File from app , Select Move to trash.

Screen Shot 2015-05-14 at 2.08.02 PM

Step 3 : Open AppHelper.h and delete all content . And add

#import <UIKit/UIKit.h>

Click Project Navigator –> Targets –> Builds phases –> Link Binary with Libraries –> Add UIKit framework.

Screen Shot 2015-05-14 at 2.12.47 PM

Step 4:  Click on Editer –> Add Build Phase –> Add Header Build phase

Screen Shot 2015-05-14 at 2.18.57 PM

Step 5 :: Drag n Drop AppHelper.h in Public header

Screen Shot 2015-05-14 at 3.14.27 PM

Step 6: Go to Build Setting and Search public header . Double click on the Public Headers Folder Path setting and enter the following in the popup:   include/$(PROJECT_NAME)

Screen Shot 2015-05-14 at 3.23.14 PM

Step 7: Create New class assume CommonCode , And write you code for which you want to make framework. and Import it in AppHelper.h. Also remember make CommonCode to public.

Screen Shot 2015-05-14 at 3.39.37 PM

Note :: You can add more class similar type but make sure , keep minimum class public.

Step 8::  Since you’re creating a framework for others to use, it’s best to disable both and let the user choose what’s best for their project. To do this, using the same search field as before, update the following settings:

  • Dead Code Stripping – Set this to NO
  • Strip Debug Symbols During Copy – Set this to NO for all configurations
  • Strip Style – Set this to Non-Global Symbols

Build and run. There’s not a lot to see yet, but it’s still good to confirm the project builds successfully and without warnings or errors.

To build, select the target as iOS Device and press cmd+B to perform the build. Once completed, the libAppHelper.a product in the Products group of the Project Navigator will turn from red to black, signaling that it now exists. Right click on libAppHelper.a and select Show in Finder.

Here You have created a static library But not Framework.

For creating Framework , You also need to follow some more Step.

There are a couple of things that make a framework distinct:

  1. The directory structure. Frameworks have a special directory structure that is recognized by Xcode. You’ll create a build task, which will create this structure for you.
  2. The Slices. Currently, when you build the library, it’s only for the currently required architecture, i.e. i386, arm7, etc. In order for a framework to be useful, it needs to include builds for all the architectures on which it needs to run. You’ll create a new product which will build the required architectures and place them in the framework.

Step 1:: Go to Editer –> Add Build phase –> Add Run Script Build Phase

Screen Shot 2015-05-14 at 3.34.19 PM

Step 2. Make double click to Rename it as named Build Framework  and

Paste the following Bash script into the script field:

set -e
 
export FRAMEWORK_LOCN="${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.framework"
 
# Create the path to the real Headers die
mkdir -p "${FRAMEWORK_LOCN}/Versions/A/Headers"
 
# Create the required symlinks
/bin/ln -sfh A "${FRAMEWORK_LOCN}/Versions/Current"
/bin/ln -sfh Versions/Current/Headers "${FRAMEWORK_LOCN}/Headers"
/bin/ln -sfh "Versions/Current/${PRODUCT_NAME}" \
             "${FRAMEWORK_LOCN}/${PRODUCT_NAME}"
 
# Copy the public headers into the framework
/bin/cp -a "${TARGET_BUILD_DIR}/${PUBLIC_HEADERS_FOLDER_PATH}/" \
           "${FRAMEWORK_LOCN}/Versions/A/Headers"

Screen Shot 2015-05-14 at 3.39.37 PM

Step 3: Now, select the AppHelper static library scheme and the iOS Device build target, then build using cmd+B.

Right click on the libAppHelper.a static library  and once again select Show In Finder.

Your Framework is ready to use Now


Best Of Luck

Sunny Singh

Lineage Technology

Common method in Swift


1. Check for any field empty in NSDictionary

class func checkforEmptyValueinDictioanty(dic:NSDictionary)-> Bool{

for (keyVal, dataVal) in dic {

  if (dataVal.length()==0){

                println(\(keyVal): \(dataVal.length()))

                return false

            }

            

        }

        return true

    }

2.Email validation

class func isValidEmail(testStr:String) -> Bool {

let fullNameArr = testStr.componentsSeparatedByString(“@”)

        var firstPart: String = fullNameArr[0]

        if let range = firstPart.rangeOfCharacterFromSet(NSCharacterSet.letterCharacterSet()){

 }else{

            return false

        }

      let emailRegEx = “[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}”

 var emailTest = NSPredicate(format:“SELF MATCHES %@”, emailRegEx)

        let result = emailTest.evaluateWithObject(testStr)

        return result

    }

3. Alert in Swift

class func commonAlert(title:String,msg:String,curView:UIViewController){

        var device : UIDevice = UIDevice.currentDevice();

        var systemVersion = device.systemVersion;

        var iosVerion : Float = (systemVersion as NSString).floatValue

        if(iosVerion >= 8.0) {

    

        var alert = UIAlertController(title: title, message: msg, preferredStyle: UIAlertControllerStyle.Alert)

            alert.addAction(UIAlertAction(title: “Ok”, style: UIAlertActionStyle.Default, handler: nil))

                  // return alert

            curView.presentViewController(alert, animated: true, completion: nil)

        }else{

            let alert=UIAlertView(title: title, message: msg, delegate: self, cancelButtonTitle: “ok”)

            alert.show()

           

        }

    }

4. NSUserDefaults in swift as common function

class func saveToUserDefault(value:AnyObject, key:String)

    {

        NSUserDefaults.standardUserDefaults().setObject(value, forKey:key)

        NSUserDefaults.standardUserDefaults().synchronize()

    }

    

    class func userDefaultForKey(key:String) -> String

    {

        return NSUserDefaults.standardUserDefaults().objectForKey(key) as NSString

        

    }

    class func userDefaultForAny(key:String) -> AnyObject

    {

        return NSUserDefaults.standardUserDefaults().objectForKey(key) as AnyObject!

    }

    

    class func userdefaultForArray(key:String) -> Array<AnyObject>

    {

        return NSUserDefaults.standardUserDefaults().objectForKey(key) as Array

    }

    

    class func removeFromUserDefaultForKey(key:String)

    {

        NSUserDefaults.standardUserDefaults().removeObjectForKey(key)

        NSUserDefaults.standardUserDefaults().synchronize()

        

    }

5.Get screen height and width

let _screenWidth=UIScreen.mainScreen().bounds.size.width

let _screenHeight=UIScreen.mainScreen().bounds.size.height

Use HexColor in Swift as a color


Add it in your class 

extension UIColor {

   convenience init(red: Int, green: Int, blue: Int) {

       assert(red >= 0 && red <= 255, “Invalid red component”)

       assert(green >= 0 && green <= 255, “Invalid green component”)

       assert(blue >= 0 && blue <= 255, “Invalid blue component”)

       self.init(red: CGFloat(red) / 255.0, green: CGFloat(green) / 255.0, blue: CGFloat(blue) / 255.0, alpha: 1.0)

   }

   convenience init(netHex:Int) {

       self.init(red:(netHex >> 16) & 0xff, green:(netHex >> 8) & 0xff, blue:netHex & 0xff)

   }

}

Use it where you need…….

var color = UIColor(red: 0xFF, blue: 0xFF, green: 0xFF)

var color2 = UIColor(netHex:0xFFFFFF)

Open Setting from your iOS application


Step 1.  Add a method in AppDelegate

private func setSettings() {

        let userDefaults = NSUserDefaults.standardUserDefaults()

        let defaults = [ “AppTitle” : “SettingLinker” ]

        userDefaults.registerDefaults(defaults)

        userDefaults.synchronize()

        println(userDefaults.dictionaryRepresentation())

    }

Step 2. Call this function from didFinishLaunchingWithOptions

    setSettings()

Step 3. Add a setting bundle

            Application —> New file —> Resources —> Setting Bundle

******** it will be a pre defined bundle . Change title according to your requirement.

Step 4. Add a Notification to trace changes of setting in Your ViewController’s ViewDidLoad method

override func viewDidLoad() {

        super.viewDidLoad()

        

        NSNotificationCenter.defaultCenter().addObserver(self,   selector: “traceChanges, name: NSUserDefaultsDidChangeNotification, object: nil)

        setupView()

        // Do any additional setup after loading the view, typically from a nib.

    }

Step 5. Add a method named  traceChanges .

func defaultsChanged() {

        setupView()

    }

Step 6. Add a new Method name  setupView

private func setupView() {

        let userDefaults = NSUserDefaults.standardUserDefaults()

        yourLabelL.text = userDefaults.stringForKey(“AppTitle”)

    }

Step 7. Add a button and addEvent Listener

@IBAction func gotoSetting(sender: AnyObject) {

        UIApplication.sharedApplication().openURL(NSURL.URLWithString(UIApplicationOpenSettingsURLString))

    }

Best Of luck..

enjoy coding