Cloud Paper

A simple place on the cloud for your text and files. Welcome, public!

History

https://mofa.axis.dpdns.org/mofa/sub
https://omega.serv00.net
https://gist.githubusercontent.com/shuaidaoya/9e5cf2749c0ce79932dd9229d9b4162b/raw/base64.txt
https://cloudpaper.pages.dev/
/**
 * @fileoverview Auto.js script to create a calendar event with multiple reminders.
 * This script requests calendar permissions, creates an event, and sets several
 * reminders for it.
 */

// 1. Request necessary permissions
// It's crucial to grant these permissions for the script to function.
runtime.requestPermissions([
    "android.permission.READ_CALENDAR",
    "android.permission.WRITE_CALENDAR"
]);

// 2. Check if permissions were granted
// If permissions are not granted, the script will show a message and exit gracefully.
if (!runtime.isPermissionGranted("android.permission.READ_CALENDAR") || !runtime.isPermissionGranted("android.permission.WRITE_CALENDAR")) {
    toastLog("Permission denied. The script cannot add a calendar event.");
    exit();
}

// 3. Import required Java classes
var Long = java.lang.Long;
var TimeZone = java.util.TimeZone;
var ContentValues = android.content.ContentValues;
var CalendarContract = android.provider.CalendarContract;
var context = context; // Get the Android context

// ======================= CONFIGURATION =======================
// Modify the parameters below to customize the event.

// Event details
const EVENT_TITLE = "Auto.js Reminder Event";
const EVENT_DESCRIPTION = "This is an event automatically added by an Auto.js script.";

// Event timing
const START_OFFSET_HOURS = 8; // Event will start in 8 hours from now.
const DURATION_MINUTES = 1;   // The event will last for 1 minute.

// Calendar ID
// IMPORTANT: This ID might be different on your device. '1' is usually the primary
// calendar, but if it fails, you may need to find the correct ID.
const CALENDAR_ID = 1;

// Reminder times (in minutes before the event starts)
// Add or remove values here to change the reminders.
const REMINDER_MINUTES = [30, 10, 5, 0]; // 0 means at the time of the event.

// =============================================================


// 4. Calculate event start and end times in milliseconds
var now = new Date().getTime();
var startTime = Long.valueOf(now + START_OFFSET_HOURS * 60 * 60 * 1000);
var endTime = Long.valueOf(startTime + DURATION_MINUTES * 60 * 1000);

// 5. Create the event content
var event = new ContentValues();
event.put(CalendarContract.Events.DTSTART, startTime);
event.put(CalendarContract.Events.DTEND, endTime);
event.put(CalendarContract.Events.TITLE, EVENT_TITLE);
event.put(CalendarContract.Events.DESCRIPTION, EVENT_DESCRIPTION);
event.put(CalendarContract.Events.CALENDAR_ID, Long.valueOf(CALENDAR_ID));
event.put(CalendarContract.Events.EVENT_TIMEZONE, TimeZone.getDefault().getID());

// 6. Insert the event and add reminders
try {
    // Insert the event into the calendar
    var uri = context.getContentResolver().insert(CalendarContract.Events.CONTENT_URI, event);

    if (uri != null) {
        // Successfully inserted, now get the event ID
        var eventId = Long.valueOf(uri.getLastPathSegment());
        toastLog("Event created successfully! ID: " + eventId);

        // Loop through the reminder times and add each one
        REMINDER_MINUTES.forEach(function(minutes) {
            var reminder = new ContentValues();
            reminder.put(CalendarContract.Reminders.EVENT_ID, eventId);
            reminder.put(CalendarContract.Reminders.MINUTES, Long.valueOf(minutes));
            // Use the standard alert/notification method for the reminder
            reminder.put(CalendarContract.Reminders.METHOD, Long.valueOf(CalendarContract.Reminders.METHOD_ALERT));

            // Insert the reminder
            var reminderUri = context.getContentResolver().insert(CalendarContract.Reminders.CONTENT_URI, reminder);
            if (reminderUri) {
                log("Successfully added reminder for " + minutes + " minutes before.");
            } else {
                log("Failed to add reminder for " + minutes + " minutes before.");
            }
        });
        toastLog("All reminders have been set.");

    } else {
        toastLog("Failed to create the event. The URI was null.");
    }
} catch (e) {
    // Catch any errors during the insertion process
    toastLog("An error occurred: " + e);
}
// 动态申请权限
runtime.requestPermissions([
    "android.permission.READ_CALENDAR",
    "android.permission.WRITE_CALENDAR"
]);

// 引入 Java 类型
var Long = java.lang.Long;
var TimeZone = java.util.TimeZone;
var ContentValues = android.content.ContentValues;
var CalendarContract = android.provider.CalendarContract;

// 获取当前时间
var now = new Date().getTime();
var start = Long.valueOf(now + 8*60 * 60 * 1000); // 当前时间 + 8h
var end = Long.valueOf(start + 1 * 60 * 1000); // 持续1分钟

// 创建事件内容
var event = new ContentValues();
event.put(CalendarContract.Events.DTSTART, start);
event.put(CalendarContract.Events.DTEND, end);
event.put(CalendarContract.Events.TITLE, "AutoJS提醒事件");
event.put(CalendarContract.Events.DESCRIPTION, "这是一个由AutoJS自动添加的事件");
event.put(CalendarContract.Events.CALENDAR_ID, Long.valueOf(1)); // 日历ID,需根据设备调整
event.put(CalendarContract.Events.EVENT_TIMEZONE, TimeZone.getDefault().getID());

// 插入事件
try {
    var uri = context.getContentResolver().insert(CalendarContract.Events.CONTENT_URI, event);
    if (uri != null) {
        // 获取事件ID
        var eventId = Long.valueOf(uri.getLastPathSegment());

        // 创建提醒内容(提前0分钟,即“开始时”提醒)
        var reminder = new ContentValues();
        reminder.put(CalendarContract.Reminders.EVENT_ID, eventId);
        reminder.put(CalendarContract.Reminders.MINUTES, Long.valueOf(0)); // 提前0分钟提醒
        reminder.put(CalendarContract.Reminders.METHOD, Long.valueOf(CalendarContract.Reminders.METHOD_ALERT)); // 使用系统提醒

        // 插入提醒
        var reminderUri = context.getContentResolver().insert(CalendarContract.Reminders.CONTENT_URI, reminder);
        toastLog("事件和提醒已成功添加!");
    } else {
        toastLog("事件添加失败!");
    }
} catch (e) {
    toastLog("插入事件或提醒时出错:" + e);
}

//exit()
"ui";
ui.layout(
    <vertical padding="16">
        <text textSize="16sp" textColor="black" text="请输入姓名"/>
        <input id="name" text="小明"/>
        <button id="ok" text="确定"/>
        <button id="cancel" text="Cancel"/>
    </vertical>
);

//指定确定按钮点击时要执行的动作 
ui.ok.click(function() {
    //通过getText()获取输入的内容 
    var name = ui.name.getText();
    toast(name + "您好!");
});
ui.cancel.click(function() {
    ui.finish();
    exit();
});


// 动态申请权限
runtime.requestPermissions([
    "android.permission.READ_CALENDAR",
    "android.permission.WRITE_CALENDAR"
]);

// 引入 Java 类型
var Long = java.lang.Long;
var TimeZone = java.util.TimeZone;
var ContentValues = android.content.ContentValues;
var CalendarContract = android.provider.CalendarContract;

// 获取当前时间
var now = new Date().getTime();
var start = Long.valueOf(now + 8*60 * 60 * 1000); // 当前时间 + 8h
var end = Long.valueOf(start + 1 * 60 * 1000); // 持续1分钟

// 创建事件内容
var event = new ContentValues();
event.put(CalendarContract.Events.DTSTART, start);
event.put(CalendarContract.Events.DTEND, end);
event.put(CalendarContract.Events.TITLE, "AutoJS提醒事件");
event.put(CalendarContract.Events.DESCRIPTION, "这是一个由AutoJS自动添加的事件");
event.put(CalendarContract.Events.CALENDAR_ID, Long.valueOf(1)); // 日历ID,需根据设备调整
event.put(CalendarContract.Events.EVENT_TIMEZONE, TimeZone.getDefault().getID());

// 插入事件
try {
    var uri = context.getContentResolver().insert(CalendarContract.Events.CONTENT_URI, event);
    if (uri != null) {
        // 获取事件ID
        var eventId = Long.valueOf(uri.getLastPathSegment());

        // 创建提醒内容(提前0分钟,即“开始时”提醒)
        var reminder = new ContentValues();
        reminder.put(CalendarContract.Reminders.EVENT_ID, eventId);
        reminder.put(CalendarContract.Reminders.MINUTES, Long.valueOf(0)); // 提前0分钟提醒
        reminder.put(CalendarContract.Reminders.METHOD, Long.valueOf(CalendarContract.Reminders.METHOD_ALERT)); // 使用系统提醒

        // 插入提醒
        var reminderUri = context.getContentResolver().insert(CalendarContract.Reminders.CONTENT_URI, reminder);
        toastLog("事件和提醒已成功添加!");
    } else {
        toastLog("事件添加失败!");
    }
} catch (e) {
    toastLog("插入事件或提醒时出错:" + e);
}

//exit()
概率导论.第2版.修订版.pdf
Download
Balance stones at beach.jpg
Download
IMG_8115.jpeg
Download
IMG_8116.jpeg
Download