title: Is it possible to send complex Arrays from iPhone to AppleWatch with watch connectivity?
body: <p>I have a problem passing data from <em>iOS</em> to <em>WatchOS 2.0</em></p>
  
  <p>I want to send an <code>ArrayList</code> to <em>WatchOS</em> but my <code>ArrayList</code> has no type like <code>String</code>, <code>Int</code> but an <code>Object</code> that I generated. </p>
  
  <pre><code>    // here I fetch my Lists with Users
      var friendList: [UserProfile] = Utils().loadUsers("friendList")
      var blackList: [UserProfile] = Utils().loadUsers("blackList")
      var users: [UserProfile] = Utils().loadUsers("UsersList")
  
      // here I put the Lists in the Dictionary in order to send this Dictionary to Watch
      let dictionary: [String: AnyObject]=[
          "UsersList" : self.users,
          "BlackList" : self.blackList,
          "FriendList" : self.friendList
      ]
  
      WCSession.defaultSession().sendMessage(dictionary, replyHandler: { (data) -&gt; Void in
          // handle the response from the device
  
          }) { (error) -&gt; Void in
              print("error: \(error.localizedDescription)")
      }
  </code></pre>
  
  <p>In my WatchApp Class I try to get the Data but there is following error:</p>
  
  <blockquote>
    <p>error: Payload contains unsupported type.</p>
  </blockquote>
  
  <p>This is how I want to get the Data. If I send <code>Bools</code>, <code>Integers</code> or <code>String</code> this works, but not for <code>Arrays</code> like mine:</p>
  
  <pre><code>let userList: [UserProfile] = applicationContext["UsersList"] as! [UserProfile]
  let blackList: [UserProfile] = applicationContext["BlackList"] as! [UserProfile]
  let friendList: [UserProfile] = applicationContext["FriendList"] as! [UserProfile]
  </code></pre>
  
  <p>Hope anyone can help me with this Problem.</p>