Q:

iPhone App rejected due to UIRequiredDeviceCapabilities

This is twice that I am getting this message from apple for the reason of rejection. 

From Apple
2.3 - Apps that do not perform as advertised by the developer will be rejected
2.3 Details
We attempted to review your app but were unable to install the app on iPhone. The UIRequiredDeviceCapabilities key in the Info.plist is set in such a way that the app will not install on an iPhone .
Next Steps
Please check the UIRequiredDeviceCapabilities key to verify that it contains only the attributes required for your app features or the attributes that must not be present on the device. Attributes specified by a dictionary should be set to true if they are required and false if they must not be present on the device.

Here is the info.plist that i am submittin. Look at the key  'UIRequiredDeviceCapabilities' where they say the problem is. 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>CFBundleDevelopmentRegion</key>
    <string>en</string>
    <key>CFBundleExecutable</key>
    <string>$(EXECUTABLE_NAME)</string>
    <key>CFBundleIcons</key>
    <dict/>
    <key>CFBundleIcons~ipad</key>
    <dict/>
    <key>CFBundleIdentifier</key>
    <string>com.yourvoice.chatomic</string>
    <key>CFBundleInfoDictionaryVersion</key>
    <string>6.0</string>
    <key>CFBundleName</key>
    <string>$(PRODUCT_NAME)</string>
    <key>CFBundlePackageType</key>
    <string>APPL</string>
    <key>CFBundleShortVersionString</key>
    <string>1.3</string>
    <key>CFBundleSignature</key>
    <string>????</string>
    <key>CFBundleVersion</key>
    <string>107</string>
    <key>Fabric</key>
    <dict>
        <key>APIKey</key>
        <string>f1e34e6abf0c05dfe5254ef3cc5debf97924e90b</string>
        <key>Kits</key>
        <array>
            <dict>
                <key>KitInfo</key>
                <dict/>
                <key>KitName</key>
                <string>Crashlytics</string>
            </dict>
        </array>
    </dict>
    <key>LSRequiresIPhoneOS</key>
    <true/>
    <key>NSLocationWhenInUseUsageDescription</key>
    <string>Allow to use current location?</string>
    <key>UIAppFonts</key>
    <array>
        <string>OpenSans-Light.ttf</string>
        <string>OpenSans-Semibold.ttf</string>
        <string>OpenSans-Bold.ttf</string>
        <string>OpenSans-Italic.ttf</string>
        <string>OpenSans-Regular.ttf</string>
    </array>
    <key>UIBackgroundModes</key>
    <array>
        <string>fetch</string>
        <string>voip</string>
    </array>
    <key>UILaunchStoryboardName</key>
    <string>ActivityIndicatorView</string>
    <key>UIMainStoryboardFile</key>
    <string>MainChatomicStoryboard</string>
    <key>UIRequiredDeviceCapabilities</key>
    <array>
        <string>armv7</string>
        <string>armv6</string>
        <string>gps</string>
        <string>location-services</string>
        <string>wifi</string>
    </array>
    <key>UIStatusBarStyle</key>
    <string>UIStatusBarStyleLightContent</string>
    <key>UISupportedInterfaceOrientations</key>
    <array>
        <string>UIInterfaceOrientationPortrait</string>
        <string>UIInterfaceOrientationPortraitUpsideDown</string>
    </array>
    <key>UIViewControllerBasedStatusBarAppearance</key>
    <false/>
</dict>
</plist>

A:

You will want to take the <string>armv7</string> and <string>armv6</string> out.
With UIRequiredDeviceCapabilities you are saying that the app only works on devices that have the features listed. As such you're saying that you only support devices that are armv6 and armv7, which is contradictory.
As a note, if your app can run without gps (e.g. on an iPod Touch) then you'll want to take those keys out too, only have them in there if you absolutely require them.

