Bạn có thể sẽ cần phải đặt TimeZone của mình và thêm người dùng root. Việc thêm người dùng root có thể được thực hiện như sau:
echo "root:x:0:0::/system/etc/crontabs:/system/bin/sh" > /system/etc/passwd
Nhận đúng chuỗi TimeZone là lẻ. Đặt biến môi trường TZ thành chuỗi múi giờ và đảm bảo crond nhận được nó. Tôi có nó dưới sự kiểm soát của một môi trường GUI, và sử dụng sau đây để có được TimeZone (có thể không chính xác như tôi đã không thử nghiệm nó trên múi giờ khác được nêu ra).
public static String findTZS() {
String date = ZooGate.readShellCommand("date");
String[] elements = date.split(" ");
String label = elements[4];
TimeZone tz = Calendar.getInstance().getTimeZone();
boolean dlt = tz.useDaylightTime();
int offset = tz.getDSTSavings()/600000;
DateFormatSymbols dfs = DateFormatSymbols.getInstance();
String[][] z = dfs.getZoneStrings();
for (String[] za: z) {
if (dlt) {
if (za[4].equals(label)) {
return za[2] + offset + za[4];
} else if (za[2].equals(label)) {
return za[2] + offset + za[4];
}
}
}
return "UTC";
}
Đồng thời đảm bảo rằng crontab của bạn được đặt tên cho người dùng (gốc) và cũng thuộc sở hữu của người dùng đó. Nếu bạn đặt crontab trên bộ nhớ trong của mình để bạn có thể chỉnh sửa nó bằng trình chỉnh sửa văn bản Android, bạn có thể biến nó thành liên kết tượng trưng thành/data/media/0. Tôi sử dụng/system/etc/crontabs/root ->/data/media/0/Cron/master
Bạn sử dụng/dữ liệu/phương tiện và/lưu trữ hoặc/sdcard vì sau này là hệ thống tệp FUSE ẩn Unix cơ bản quyền hệ thống tệp và quyền sở hữu, vì vậy bạn cần đặt quyền sở hữu trên hệ thống tệp thực trong/data.
Nếu bạn có một Android cũ hơn có sử dụng chất béo hoặc YAFFS hoặc bất cứ điều gì cho việc lưu trữ nội bộ sau đó bạn có thể phải giữ crontabs của bạn trong/hệ thống
Cẩn thận cron rằng không phải lúc nào chạy đúng thời hạn dưới Android vì nó thích ngủ.
Nguồn
2016-01-13 04:59:13
http://stackoverflow.com/questions/13063106/how-to-install-busybox-on-android-emulator-android-2-3-3 – Sam