ok i finally find the source of this problem.
i used to use this code for get a current date:
Calendar c = Calendar.getInstance();
int day = c.get(Calendar.DATE);
int mounth = c.get(Calendar.MONTH);
int year = c.get(Calendar.YEAR);
but i find out that the Months are Indexed from 0. so when it returns 11 it means that Dec.
so I changed code to this:
Calendar c = Calendar.getInstance();
int day = c.get(Calendar.DATE);
int mounth = c.get(Calendar.MONTH)+1;
int year = c.get(Calendar.YEAR);
thank to all my friends.