add getappdata function