crond is always using DEFAULT_SHELL to execute a scheduled job. Though this is set to /bin/sh which does not exsist on android. I saw a discussion on a similar topic dated back to 2011. There it was mentioned that on android the system reports the default shell for a user correctly to /system/bin/sh even if there is no passwd file (which usually is the case on android). At least there should be a way to configure crond maybe what shell to use?
Fixed in git: /* $SHELL, or current UID's shell, or DEFAULT_SHELL */ /* Useful on Android where DEFAULT_SHELL /bin/sh may not exist */ G.default_shell = xstrdup(get_shell_name());