Skip to main content

Changelog

Changelog

If you have previously read the SDK guide for an earlier version (0.0.1), check this section for changes.


v0.1.5 (2026-03-30) — Current Version

New Features

  1. shareForReward API added: A new API for granting rewards upon share completion has been added.

    TudadaSDK.shareForReward({
    url: 'https://example.com/share', // optional
    success: (res) => {
    if (res.rewarded) console.log('Share complete — reward granted');
    },
    fail: (err) => console.error('Share failed:', err.errMsg),
    });

    // Promise pattern
    const result = await TudadaSDK.shareForRewardAsync({ url: 'https://example.com/share' });
    if (result.rewarded) console.log('Reward granted');
    • shareForReward(): Callback pattern (success/fail/complete)
    • shareForRewardAsync(): Promise pattern
    • Share handling is automatically managed by the platform

v0.1.4 (2026-03-18)

New Features

  1. showRewardedAd API added: Handles everything from loading to displaying a rewarded ad in a single call.

    TudadaSDK.showRewardedAd({
    adUnitId: 'your-ad-unit-id',
    success: (res) => {
    if (res.isEnded) console.log('Watch complete — reward granted');
    },
    fail: (err) => console.error('Ad failed:', err.errMsg),
    });

    // Promise pattern
    const result = await TudadaSDK.showRewardedAdAsync({ adUnitId: 'your-ad-unit-id' });
    • showRewardedAd(): Callback pattern (success/fail/complete) — recommended
    • showRewardedAdAsync(): Promise pattern
    • The platform handles ad loading, display, retries, loading UI, and failure popups automatically
    • createRewardedVideoAd is maintained as legacy (@deprecated)
  2. CheckFeature API added: Allows you to check in advance whether a specific API is supported on the current platform.

    TudadaSDK.checkFeature({
    apiName: 'startAccelerometerSensor',
    success: (res) => console.log('Supported:', res.apiName),
    fail: (res) => console.log('Unsupported:', res.status),
    });

    // Promise pattern
    const result = await TudadaSDK.checkFeatureAsync('startAccelerometerSensor');
    • checkFeature(): Callback-based — success (supported) / fail (unsupported)
    • checkFeatureAsync(): Promise-based — both supported and unsupported resolve
    • Unsupported reasons: unknown_api | version_required | platform_unsupported | device_unsupported | permission_denied
  3. LaunchOptions API added: Allows you to retrieve query parameters and referrer information passed when the game launches.

    const options = TudadaSDK.getLaunchOptions();
    console.log('Query:', options.query);
    • getLaunchOptions(): Sync — returns pre-cached launch options
    • getLaunchOptionsAsync(): Async — fetches the latest launch options

Changes

  • wx object officially classified as legacy: API calls through the wx object have been officially classified as a legacy compatibility feature for porting existing WeChat games.
    • Only existing APIs registered up to v0.1.2 are exposed on the wx object.
    • New APIs added from v0.1.3 onwards (accelerometer, checkFeature, getLaunchOptions, etc.) are TudadaSDK-exclusive and cannot be used through the wx object.
    • After porting is complete, we recommend gradually transitioning to direct TudadaSDK calls.

v0.1.3 (2026-02-26)

New Features

  1. Accelerometer API added: Flat accelerometer sensor APIs have been added. This is a TudadaSDK-specific interface that is not compatible with the wx API (wx.startAccelerometer, etc.) — the API names and parameter structures differ. It cannot be used through the wx object and must be called directly from TudadaSDK.

    TudadaSDK.onAccelerometerChange((res) => {
    console.log(`X: ${res.x}, Y: ${res.y}, Z: ${res.z}`);
    });

    TudadaSDK.startAccelerometerSensor({
    sensitivity: 'normal',
    success: () => console.log('Sensing started'),
    });

    TudadaSDK.stopAccelerometerSensor();
    • startAccelerometerSensor(), stopAccelerometerSensor(), onAccelerometerChange(), offAccelerometerChange()
    • Independent interface different from wx API (e.g., startAccelerometerSensor vs wx.startAccelerometer)
    • Receives XYZ-axis acceleration data
    • Sensitivity-based control: 'sensitive' | 'normal' | 'insensitive'

v0.1.2 (2026-02-26)

New Features

  1. environment field added to SystemInfo and AppBaseInfo

    A field indicating the current access environment has been added.

    const info = TudadaSDK.getSystemInfoSync();
    console.log(info.environment); // 'prod' or 'dev'

    const appInfo = TudadaSDK.getAppBaseInfo();
    console.log(appInfo.environment); // 'prod' or 'dev'
    ValueDescription
    'prod'Production environment
    'dev'Development environment

    This can be used, for example, to switch resource CDN addresses based on the environment.

    const info = TudadaSDK.getSystemInfoSync();
    const cdnBase = info.environment === 'prod'
    ? 'https://cdn.example.com/prod'
    : 'https://cdn.example.com/dev';

v0.1.1 (2026-02-20)

  • Internal improvements applied (no game code changes required)

v0.1.0 (2026-02-06)

New Features

  1. userId field added to login() response

    TudadaSDK.login({
    success: (res) => {
    console.log(res.code); // existing
    console.log(res.userId); // newly added
    },
    });
  2. SystemInfo.wifiEnabled now returns the actual value

    Previously returned a fixed value, but now returns the actual Wi-Fi enabled status.

Breaking Changes (Migration Required)

  1. checkSession() success callback result type changed

    // 0.0.1 — success callback included login info
    TudadaSDK.checkSession({
    success: (res) => {
    // res contained code, userId, etc.
    },
    });

    // 0.1.0 onwards — success callback contains only general result
    TudadaSDK.checkSession({
    success: (res) => {
    // res contains only errMsg (GeneralCallbackResult)
    // Call login() separately if login info is needed
    },
    });

v0.0.2

New Features

  1. Audio API added: The createInnerAudioContext() method has been added.

    const audio = TudadaSDK.createInnerAudioContext();
    audio.src = './bgm.mp3';
    audio.loop = true;
    audio.play();
    • Audio playback/pause/stop/seek
    • Volume and playback speed control
    • Various event listeners (onPlay, onEnded, onError, etc.)

v0.0.1 (2026-02-02) — Initial Release

This is the initial release version. The following APIs are included:

  • Auth API (login, checkSession, getUserInfo)
  • Storage API (set/get/remove/clear + Sync versions)
  • TudadaStore API (cloud storage)
  • System API (getSystemInfo, getWindowInfo, getDeviceInfo, etc.)
  • UI API (getMenuButtonBoundingClientRect)
  • Device API (vibration, keyboard)
  • Clipboard API
  • Ad API (rewarded video ads)
  • Lifecycle API (onShow, onHide, exitMiniProgram, restartMiniProgram)