Skip to content

笔落写作应用开放API

概述

本文档介绍了 APP 提供的 JavaScript API 扩展功能,允许用户脚本调用原生应用能力。

基础 API

Toast 通知

显示应用内通知消息。

javascript
// 基础用法
toast({
  content: "操作成功!",
  type: "success",
  durationMilliseconds: 2000
});

// 显示错误信息
toast({
  content: "网络连接失败",
  type: "error"
});

// 显示警告
toast({
  content: "请注意数据格式",
  type: "warn"
});

// 显示普通信息
toast({
  content: "正在处理中...",
  type: "info"
});

参数说明

参数类型默认值说明
contentstring""通知内容
typestring"none"通知类型:noneinfowarnerrorsuccess
durationMillisecondsnumber1000显示持续时间(毫秒)

本地存储

本地存储数据,保留在设备本地,同一个用户多个设备之间不互通

获取本地存储数据

javascript
// 获取用户设置
const userSettings = getSharedLocalStore({
  key: "userSettings"
});

// 获取主题配置
const theme = getSharedLocalStore({
  key: "theme"
});

设置本地存储数据

javascript
// 保存用户配置
setSharedLocalStore({
  key: "userSettings",
  value: JSON.stringify({
    fontSize: 16,
    darkMode: true
  })
});

// 保存简单值
setSharedLocalStore({
  key: "lastLoginTime",
  value: new Date().toISOString()
});

云同步存储

云同步存储,用户多个设备的数据互通,会自动同步

  • 尽量不要在云同步数据存储太多东西,不然会消耗大量云同步流量

获取云同步存储数据

javascript
// 获取云端同步的配置
const cloudConfig = getSharedSyncStore({
  key: "cloudSettings"
});

// 获取跨设备数据
const syncData = getSharedSyncStore({
  key: "syncPreferences"
});

设置同步存储数据

javascript
// 保存需要同步的设置
setSharedSyncStore({
  key: "cloudSettings",
  value: {
    autoSync: true,
    syncInterval: 300
  }
});

// 保存用户偏好
setSharedSyncStore({
  key: "userPreferences",
  value: "preference_value"
});

应用统计 API

获取统计数据

获取应用的各种统计信息。

javascript
// 获取今日自定义计数
const todayCount = JSON.parse(getStatisticData({
  type: "todayCustomCount"
}));

// 获取历史自定义计数
const historyCount = JSON.parse(getStatisticData({
  type: "historyCustomCount"
}));

// 获取打字时间统计
const typeTime = JSON.parse(getStatisticData({
  type: "typeTime"
}));

// 获取当前速度
const currentSpeed = JSON.parse(getStatisticData({
  type: "speed"
}));

返回值类型是一个json字符串:

ts
interface StatisticData {
  // 数据值
  value: string;
  // 数据单位
  unit: string;
}

统计数据类型

类型说明
todayCustomCount今日自定义字数
historyCustomCount历史自定义字数
typeTime打字时长
restCount今日摸鱼次数
restTime今日摸鱼时间
thinkCount今日思考次数
thinkTime今日思考时长
bookOverviewMoney今日预估稿费
currentDocumentCount当前章节字数
currentDocumentMoney当前章节预估稿费
currentDocumentProgress当前章节进度
speed今日时速
historySpeed平均时速
historyTypeTime历史打字时间
overviewFluencyScore流畅度分数
overviewFocusScore专注度分数

异步操作

当前暂不支持异步操作