So I am using ionic to build a hybrid app. Just to be clear, this works flawlessly with android!
Here is my login html:
<body ng-app="starter">
    <head>
        <script src="phonegap.js"></script>
    </head>
  <ion-header-bar align-title="center" class="bar-positive" ng-controller="BackBtnCtrl">
          <button class="button" ng-click="goBack()"><<</button>
        <h1 class="title">Push Notifications</h1>
  </ion-header-bar>
    <ion-content>
        <div class="list">
        <form style="display: block; margin: 100px">
                <label class="item item-input">
                    <input type="text" ng-model="name" placeholder="Name">
                </label>
                <label class="item item-input">
                    <input type="password" ng-model="password" placeholder="Password" style="text-align: center">
                </label>
                <label class="item item-input">
                    <input type="email" ng-model="email" placeholder="Email" style="text-align: center">
                </label>
                <label class="item item-input">
                    <input type="text" ng-model="company" placeholder="Company Name" style="text-align: center">
                </label>
        <button class="button button-block button-positive" type="submit" ng-click="doLogin()">Register</button>
        </form>
        </div>
    </ion-content>
</body>
Now in my app.js I declare the controller for the ion-content as:
.state('login', {
        url: '/login',
        templateUrl: 'templates/login.html',
        controller: 'LoginCtrl'
 })
and when I access, for example, $scope.email in the android app, it returns correctly. But when I access $scope.email in the iOS app, I get undefined. Has anyone ever heard of this issue?
controller:
.controller('LoginCtrl', function($scope, $rootScope, $http, $state, $ionicPlatform) {
    if(window.localStorage.getItem("loggedIn") == undefined || window.localStorage.getItem("loggedIn") == null) {
        // This function only gets called when the register button gets hit. It posts to the server to store the users registration data
        $scope.doLogin = function() {
      if ($scope.name == undefined || $scope.password == undefined|| $scope.email == undefined|| $scope.company == undefined) {
        window.plugins.toast.showWithOptions(
          {
            message: 'Please Fill in ALL Fields',
            duration: 'long',
            position: 'middle'
          });
          alert($scope.email);
          alert("returning");
          return;
      }
      alert($scope.email);
 
     
    