I propose a little different feedback model:
- Don't display feedback for a reasonable time or number of runs. Let the user get acknowledged with your app first and forms his opinion. Otherwise user could give fast "false" feedback for just get rid of annoying button or just ignore it (like banner blindness effect).
- Display feedback for reasonable time then. If user after some app usage ignores the feedback again, it means he doesn't want to give a feedback. So don't bother him, move feedback away to...
- ... Move feedback button to
About dialog or some contact screen, i.e. the place, where a user probably hopes to find it if he will decide to contact with you.
And a trick which could help you to get feedback at the Display feedback phase. Besides just displaying feedback button, place in the feedback block current app raiting (stars, points, marks, etc.). It is the social proof of others leave feedback and it could stimulate the user to leave feedback, too.
Here not only social proof works. The current app rating could create some emotion, like "How could they give it 5? It's wrong! I faced errors here and there! Now I leave the true feedback!" or "I agree with theirs mark! I support them by leaving feedback".