NativeShare Trong Unity (IOS/Android)

1 min read

NativeShare là một plugin miễn phí cho Unity, cho phép bạn chia sẻ hình ảnh, video, file hoặc text qua hệ thống chia sẻ mặc định của thiết bị (Share Sheet trên iOS và Share Intent trên Android). Nó được dùng rộng rãi trong game/mobile app để hỗ trợ chia sẻ thành tích, hình ảnh, liên kết hoặc file.

1. NativeShare là gì?

NativeShare là một giải pháp cross-platform cho phép bạn gọi UI chia sẻ gốc của hệ điều hành. Khi gọi share, hệ thống sẽ hiển thị danh sách: Facebook, Instagram, Zalo, Messenger, Email,…. Giúp app chia sẻ nội dung trực tiếp, không cần SDK riêng từng nền tảng.

2. Ưu điểm

  • Dễ tích hợp (Chỉ cần import package và gọi 1 đoạn code ngắn).
  • Giao diện native (Hiển thị share UI đúng phong cách hệ điều hành — không cần tự làm UI).
  • Hỗ trợ nhiều loại nội dung (Text, Hình ảnh, File, Url,..);
  • Không cần permission phức tạp (NativeShare tự xử lý quyền truy cập file trên Android/iOS).
  • Free & open-source (Thay đổi theo nhu cầu rất dễ dàng).

3. Nhược điểm

  • Không tùy chỉnh được UI chia sẻ (Vì dùng share sheet gốc của hệ điều hành).
  • Một số app có thể không xuất hiện trong danh sách share, Tùy thuộc vào hệ điều hành và loại dữ liệu được hỗ trợ (ví dụ: không phải app nào cũng share được file PNG).
  • Chia sẻ video dung lượng lớn có thể chậm (Do phải copy file sang thư mục tạm để chia sẻ).

4. Cách sử dụng NativeShare

1. Chia sẻ text và URL

new NativeShare().SetText("Hello World!")
                 .SetUrl("https://www.youtube.com/")
                 .Share();

2. Chia sẻ hình ảnh (screenshot)

string filePath = Path.Combine(Application.temporaryCachePath, "share.png");
File.WriteAllBytes(filePath, screenshotBytes);

new NativeShare().AddFile(filePath)
                 .SetText("Check this out!")
                 .Share();

3. Có thể gọi Callback sau khi chia sẽ

new NativeShare().SetText("Share Test")
                 .SetCallback((result, target) => {
                     Debug.Log("Result: " + result + ", Target: " + target);
                 })
                 .Share();

5. Kết luận

NativeShare là plugin đơn giản nhưng cực kỳ hữu ích trong Unity mobile

  • Dễ dùng
  • Cross-platform
  • Chia sẻ được nhiều loại nội dung
  • Không cần xử lý phức tạp dưới native

Nhờ đó, Có thể nhanh chóng xây dựng tính năng chia sẻ trong game hoặc app mà vẫn đảm bảo giao diện native và trải nghiệm tốt trên iOS/Android.

Link download

https://github.com/yasirkula/UnityNativeShare

Avatar photo

Leave a Reply

Your email address will not be published. Required fields are marked *