It's hard to say which would provide a better experience and I would say it depends on your app and what it is.
Email addresses are useful as users should already remember then and they don't have to think about anything. This is useful if you don't have a "username" on your app.
Example: Paypal or Dropbox, where no user name is needed to use these apps and the email is the best way to connect with other people.
But if you are going to be building an app where the username is important and the user creates an identity that is crucial to your app then logging in with a user name may be better.
A good example of a user name would be internal tools for a company, where everyone uses a username to log in to their PC and various other tools.
Of course, you can offer a user the option to enter either (and you detect if the input is a username or email address) and allow them to login.
Facebook allows you to use your phone or email.
Twitter allow you to use your username, email or phone