Pushdy
  • GIỚI THIỆU
  • Cài đặt Mobile Push
    • iOS
    • Android
  • Cài đặt web push
    • Trình duyệt phổ biến
  • Sử dụng Dashboard
    • Tạo ứng dụng
    • Tạo trường dữ liệu thuộc tính
    • Tạo trường dữ liệu sự kiện
    • Gửi Push cơ bản
    • Gửi A/B Push
    • Gửi Push tự động
    • Gửi Push kích hoạt
    • Gợi ý sản phẩm
    • Banner Thông Minh
    • Max Leads
    • Đồng bộ đối tượng quảng cáo Facebook
    • Đồng bộ đối tượng quảng cáo Google
    • Liên kết tài khoản thống kê Google Analytics
    • Sử dụng Template
    • Sử dụng User Segment
    • Thiết lập Webhook Events
    • Thêm thành viên quản trị
  • Tham chiếu SDK/API
    • Rest API Reference
    • Web Push SDK
    • iOS Native SDK
    • Android Native SDK
    • React Native SDK
    • Web Event Tracking
  • Cài đặt khác
    • Cách tạo Firebase Server Key
    • Cách tạo iOS Push Certificate
    • Cách tạo Safari Push Certificate
Powered by GitBook
On this page
  • Các hàm trong Adnroid Native SDK
  • initWith
  • setDeviceID
  • getDeviceID
  • isNotificationEnabled
  • getDeviceToken
  • getPendingNotification
  • getPendingNotifications
  • setAttribute
  • pushAttribute
  • getPlayerId
  • Các Delegation trong Android Native SDK
  • readyForHandlingNotification
  • onNotificationReceived
  • onNotificationOpened
  • Một số hàm dùng để tuỳ biến hiển thị Push Notification
  • setPushBannerAutoDismiss
  • setPushBannerAutoDismissDuration
  • setCustomPushBanner
  • setCustomMediaKey
  1. Tham chiếu SDK/API

Android Native SDK

Các hàm trong Adnroid Native SDK

initWith

Khởi tạo Pushdy SDK với Client Key. Bạn có thể sao chép Client Key tại Dashboard của Pushdy sau khi bạn tạo ứng dụng. Mỗi ứng dụng sẽ có 1 Client Key duy nhất. Hàm initWith được sử dụng trong hàm onCreate trong class Application của bạn.

String clientKey = "YOUR_CLIENT_KEY";
Pushdy.initWith(this, clientKey, this);
val clientKey = "YOUR_CLIENT_KEY"
Pushdy.initWith(this, clientKey, this)

setDeviceID

Bạn có thể tuỳ chỉnh Device ID theo logic của bạn. Nếu bạn không sử dụng hàm này, Device ID sẽ được tự động sinh ra để đảm bảo định danh user là duy nhất. Hàm này phải được gọi ngay trước hàm initWith để đảm bảo Custom Device ID được lưu lại trước khi Pusdy SDK gửi yêu cầu tới máy chủ.

String customDeviceID = "YOUR CUSTOM ID";
Pushdy.setDeviceID(customDeviceID);
val customDeviceID = "YOUR CUSTOM ID"
Pushdy.setDeviceID(customDeviceID)

getDeviceID

Với hàm này bạn có thể truy xuất Device ID của bạn.

String *yourDeviceID = [Pushdy getDeviceID]
var yourDeviceID = Pushdy.getDeviceID()

isNotificationEnabled

Kiểm tra xem người dùng có bật Push Notification cho Android App của bạn hay không.

 boolean isEnabled = Pushdy.isNotificationEnabled();
var isEnabled = Pushdy.isNotificationEnabled()

getDeviceToken

Lấy Android Push Token. Token này chỉ có khi người dùng bật Push Notification cho App.

String deviceToken = Pushdy.getDeviceToken();
var deviceToken = Pushdy.getDeviceToken()

getPendingNotification

Lấy Notification mới nhất từ danh sách các Notification chưa được xử lý.


Map<String, Object> latestNotification = Pushdy.getPendingNotification();
Map<String, Any> latestNotification = Pushdy.getPendingNotification()

getPendingNotifications

Lấy danh sách toàn bộ Notification từ danh sách hàng đợi chưa được xử lý.

List<Map<String, Object>> pendingNotifications = Pushdy.getPendingNotifications();
List<Map<String, Any>> pendingNotifications = Pushdy.getPendingNotifications()

setAttribute


Pushdy.setAttribute("your_attribute_name", "your_value")
;
Pushdy.setAttribute("your_attribute_name", "your_value")

pushAttribute

Tương tự hàm setAttribute nhưng chỉ hoạt động với thuộc tính được định nghĩa là kiểu mảng (Array). Mảng giá trị mới sẽ được gắn thêm vào sau giá trị cũ.

String[] your_values_array = {"new_value_1", "new_value_2"};
Pushdy.pushAttribute("your_attribute_name", your_values_array);
val your_values_array = arrayOf("new_value_1", "new_value_2")
Pushdy.pushAttribute("your_attribute_name", your_values_array)

getPlayerId

Lấy Player ID của người dùng, ID này do Pushdy sinh ra cho mỗi người dùng đầu cuối. Chú ý, mỗi 1 thiết bị sẽ có 1 Player ID duy nhất, trường hợp gỡ ứng dụng và cài lại thì Player ID vẫn giữ nguyên. Player ID chỉ thay đổi khi bạn thay đổi Device ID bằng hàm setDeviceID.

String playerID = Pushdy.getPlayerID();
var playerID = Pushdy.getPlayerID()

Các Delegation trong Android Native SDK

Để lắng nghe được các Pushdy Callback, bạn phải implement PushdyDelegate trong AppDelegate của bạn.

import com.pushdy.Pushdy;
public class TestApplication extends Application 
                        implements Pushdy.PushdyDelegate {
   // ...
}
import com.pushdy.Pushdy
class ExampleApplication : Application(), Pushdy.PushdyDelegate {
    // ...
}

readyForHandlingNotification

Nếu hàm trả về giá trị là false có nghĩa là Push Notification sẽ không được xử lý ngay tại thời điểm nhận được mà sẽ được đưa vào hàng đợi. Bạn chỉ có thể lấy và xử lý Push Notification này bằng cách sử dụng hàm getPendingNotification. Mặc định giá trị được trả về sẽ là true, có nghĩa là Push Notification sẽ được xử lý ngay khi Device của bạn nhận được.

@Override
public boolean readyForHandlingNotification() {
    boolean already = true;
    // your custom logic
    if (my_screen_name == "tutorial") {
        // không hiển thị push ở màn hình Tutorial mà sẽ chủ động hiển thị khi 
        // sau khi user hoàn thành tutorial
        already = false;
    }
    return already;
}

override fun readyForHandlingNotification() : Boolean {
    var already = true
    // your custom logic
    if (my_screen_name == "tutorial") {
        // không hiển thị push ở màn hình Tutorial mà sẽ chủ động hiển thị khi 
        // sau khi user hoàn thành tutorial
        already = false;
    }
    return already
}

onNotificationReceived

Được gọi khi app của bạn nhận được Push Notification. Chú ý, sự kiện này chỉ xảy ra khi App của bạn đang được mở.

@Override
public void onNotificationReceived(@NotNull Map<String, ?> notification, 
    @NotNull String fromState) {
    System.out.println("Received notification from state: " + fromState);
}
override fun onNotificationReceived(notification: Map<String, Any>, 
   fromState: String) {
   println("Received notification from state: " + fromState) 
}

onNotificationOpened

Được gọi khi người dùng nhấp vào Push Notification.

@Override
public void onNotificationOpened(@NotNull Map<String, ?> notification, 
    @NotNull String fromState) {
    System.out.println("Opened notification from state: " + fromState);
}
override fun onNotificationOpened(notification: Map<String, Any>, fromState: String) {
    println("Opened notification from state: " + fromState)   
}

Một số hàm dùng để tuỳ biến hiển thị Push Notification

setPushBannerAutoDismiss

Bật/tắt tự động ẩn cửa sổ cho Push Notification khi bạn đang mở App. Nếu bạn tắt điều khiển tự động, người dùng sẽ phải chủ động nhấp vào "x" button trên cửa sổ Push để tắt thông báo.

Pushdy.setPushBannerAutoDismiss(true);
Pushdy.setPushBannerAutoDismiss(true)

setPushBannerAutoDismissDuration

Thiết lập thời gian hiển thị cửa sổ Push Notification khi bạn đang mở App. Mặc định, thời gian hiển thị là 5 giây. Hàm này chỉ hoạt động khi bạn bật chức năng tự động ẩn cửa sổ Push.


Pushdy.setPushBannerDismissDuration(5);
Pushdy.setPushBannerDismissDuration(5)

setCustomPushBanner

Tuỳ chỉnh cửa sổ hiển thị Push Notification.

Pushdy.setCustomPushBanner(yourUIView);
Pushdy.setCustomPushBanner(yourUIView)

setCustomMediaKey

Tuỳ chỉnh Json key cho media url để hiển thị ảnh trên cửa sổ Push Notification khi đang bật App. Mặc định, media_url sẽ là key được sử dụng.


PDYNotificationView.setCustomMediaKey("your_custom_media_key");
PDYNotificationView.setCustomMediaKey("your_custom_media_key")
PreviousiOS Native SDKNextReact Native SDK

Last updated 5 years ago

Tracking dữ liệu để gửi lên Pushdy nhằm phục vụ phân đoạn người dùng khi gửi Push. Với hàm này, dữ liệu mới sẽ đè lên dữ liệu cũ. Bạn có thể xem thêm chi tiết cách định nghĩa thuộc tính tại phần .

Tạo thuộc tính