deviceready using promise