Chuyển tới nội dung chính

openShareSheet

import { openShareSheet } from "zmp-sdk/apis"; // >= 2.5.3

API cho phép ứng dụng mở giao diện chia sẻ để người dùng chia sẻ thông tin với bạn bè Zalo.

Ví dụ

Chia sẻ hình ảnh:

const data = await openShareSheet({
type: "image",
data: {
imageUrls: ["http://dev.org.zads.zdn.vn/2a16c7fefbbb12e54baa"],
},
});
console.log(data);

Chia sẻ liên kết:

const data = await openShareSheet({
type: "link",
data: {
link: "http://news.zing.vn/Trung-uong-quyet-dinh-phuong-an-nhan-su-cap-cao-post632739.html",
chatOnly: false,
},
});
console.log(data);

Chia sẻ Official Account:

const data = await openShareSheet({
type: "oa",
data: {
id: "765465772305886642",
},
});
console.log(data);

Chia sẻ GIF:

const data = await openShareSheet({
type: "gif",
data: {
imageUrl: "http://dev.org.zads.zdn.vn/2a16c7fefbbb12e54baa",
gifUrl: "http://dev.org.zads.zdn.vn/fc88fe60c2252b7b7234",
width: 480,
height: 270,
},
});
console.log(data);

Chia sẻ video:

const data = await openShareSheet({
type: "video",
data: {
videoThumb: "http://dev.org.zads.zdn.vn/fc88fe60c2252b7b7234",
videoUrl: "http://dev.org.zads.zdn.vn/fc88fe60c2252b7b7234",
width: 480,
height: 270,
},
});
console.log(data);

Chia sẻ page hiện tại của Zalo Mini App:

const data = await openShareSheet({
type: "zmp",
data: {
title: "My Zalo Mini App - HomePage",
description: "Home page",
thumbnail: "https://sample-videos.com/img/Sample-jpg-image-50kb.jpg",
},
});
console.log(data);

Chia sẻ page hiện tại của Zalo Mini App thông qua deep link:

const data = await openShareSheet({
type: "zmp_deep_link",
data: {
title: "My Zalo Mini App - HomePage",
description: "Home page",
thumbnail: "https://sample-videos.com/img/Sample-jpg-image-50kb.jpg",
},
});
console.log(data);

Tham số

Truyền tham số vào API dưới dạng object chứa các thuộc tính:

NameTypeDefaultDescription
type"image" | "link" | "oa" | "gif" | "video" | "zmp" | "zmp_deep_link"

Nhận các giá trị sau:

  • image: Chia sẻ hình ảnh.
  • link: Chia sẻ liên kết.
  • oa: Chia sẻ Official Account.
  • gif: Chia sẻ ảnh động.
  • video: Chia sẻ video.
  • zmp: Chia sẻ page hiện tại của Zalo Mini App.
  • zmp_deep_link: Chia sẻ page hiện tại của Zalo Mini App thông qua deep link (hỗ trợ từ API 2.25.7).
dataShareData

Nội dung cần chia sẻ, tùy thuộc vào type.

ShareData

type='text'

NameTypeDefaultDescriptionMinimum Version
autoParseLinkbooleanfalse

Với giá trị 'true' url trong text sẽ được hiển thị dưới dạng thumbnail

2.39.0
descriptionstring

Mô tả thêm cho nội dung cần chia sẻ

2.39.1
textstring

Nội dung văn bản cần chia sẻ

2.39.0

type='image'

NameTypeDefaultDescription
imageUrlsstring[]

Url của các hình ảnh cần chia sẻ

NameTypeDefaultDescription
chatOnlybooleantrue

Chỉ chia sẻ qua cửa sổ chat

linkstring

Liên kết cần chia sẻ

type='oa'

NameTypeDefaultDescription
idstring

Id của official account

type='gif'

NameTypeDefaultDescription
gifUrlstring

Url ảnh động cần chia sẻ

heightnumber

Chiều cao

imageUrlstring

Url hình ảnh đại diện

widthnumber

Chiều rộng

type='video'

NameTypeDefaultDescription
heightnumber

Chiều cao

videoThumbstring

Url thumbnail cho video

videoUrlstring

Url video

widthnumber

Chiều rộng

type='zmp'

NameTypeDefaultDescription
descriptionstring

Mô tả

pathstring

Đường dẫn cần chia sẻ

thumbnailstring

Url thumbnail cho Zalo Mini App

titlestring

Tiêu đề cần chia sẻ

NameTypeDefaultDescription
descriptionstring

Mô tả. Tối đa 400 ký tự

pathstring

Đường dẫn cần chia sẻ, mặc định sẽ lấy theo đường dẫn hiện tại

thumbnailstring

Url thumbnail cho Zalo Mini App

titlestring

Tiêu đề cần chia sẻ. Tối đa 100 ký tự

Kết quả trả về

API trả về Promise<OpenShareSheetReturns> chứa Promise chứa thông tin kết quả chia sẻ.

OpenShareSheetReturns

NameTypeDefaultDescription
numberOfUsernumber

Số lượng user nhận được bài chia sẻ trong trường hợp shareType=2.

shareType'0' | '2' | '1'

Trạng thái bài chia sẻ:

  • 0: Công khai.
  • 1: Chỉ mình tôi.
  • 2: Chia sẻ cho danh sách bạn.
status'0' | '2' | '1'

Trạng thái chia sẻ:

  • 0: User nhấn hủy/cancel bài viết.
  • 1: Đăng bài viết thành công lên nhật ký.
  • 2: Đăng bài viết thành công qua cửa sổ chat.