
שפה 🇮🇱 עברית
תיעוד
התחלה
שימוש
אימות
תצורה
הוסף תגובות לאפליקציית האנדרואיד שלך
זוהי ספריית Android הרשמית של FastComments.
ווידג'טים של תגובות של FastComments עבור Android
מאגר
תכונות 
- 🔄 תגובות חיות עם עדכונים בזמן אמת
- 📱 רכיבי ממשק משתמש מקוריים ל-Android
- 🧵 דיונים משרשרים עם תגובות
- 👤 אימות SSO מאובטח
- 👍 מערכת הצבעה עם סגנונות ניתנים להתאמה אישית
- 🔔 התראות משתמש ונוכחות
- 🔍 יכולות מודרציה של תגובות
- 📱 אינטגרציה עם פיד חברתי
- ♾️ גלילה אינסופית
- 🎨 תמיכה בערכות נושא מקיפות
התקנה 
הוסף את ה‑FastComments SDK לקובץ build.gradle.kts של האפליקציה שלך:
dependencies {
implementation("com.fastcomments:sdk:0.0.1")
}
ודא שיש לך את מאגר Repsy בקובץ settings.gradle.kts של הפרויקט שלך:
dependencyResolutionManagement {
repositories {
maven {
url = uri("https://repo.repsy.io/mvn/winrid/fastcomments")
}
// other repositories...
}
}
שימוש בסיסי 
1. הוסף FastCommentsView לפריסה שלך
<com.fastcomments.sdk.FastCommentsView
android:id="@+id/commentsView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
2. אתחול וקונפיגורציה של ה‑SDK
// קבע את תצורת ה‑SDK
val config = CommentWidgetConfig(
"your-tenant-id",
"page-url-id",
"Page Title",
"yourdomain.com",
"Site Name"
)
// אפשרויות קונפיגורציה נוספות
config.voteStyle = VoteStyle.UpDown // או VoteStyle.Heart
config.enableInfiniteScrolling = true
config.hasDarkBackground = true // עבור תמיכה במצב כהה
// אתחל את ה‑SDK
val sdk = FastCommentsSDK(config)
// מצא את תצוגת התגובות בפריסה שלך
val commentsView = findViewById<FastCommentsView>(R.id.commentsView)
// הגדר את מופע ה‑SDK לתצוגה
commentsView.setSDK(sdk)
// טען תגובות
commentsView.load()
אימות SSO מאובטח 
הטמעת אימות מאובטח עבור המשתמשים שלך:
// צור נתוני משתמש (מומלץ לבצע זאת בשרת שלך)
val userData = SecureSSOUserData(
"user-id",
"user@example.com",
"User Name",
"https://path-to-avatar.jpg"
)
// יצירת אסימון SSO (יש לבצע זאת בצד השרת!)
val sso = FastCommentsSSO.createSecure("YOUR_API_KEY", userData)
val token = sso.prepareToSend()
// הוסף לקונפיג
config.sso = token
שילוב פיד 
הצג פיד בסגנון רשת חברתית עם תגובות:
// הגדר את ה-SDK
CommentWidgetConfig config = new CommentWidgetConfig();
config.tenantId = "your-tenant-id";
config.urlId = "page-url-id";
// אתחל את Feed SDK
FastCommentsFeedSDK feedSDK = new FastCommentsFeedSDK(config);
// הגדר את תצוגת הפיד
FastCommentsFeedView feedView = findViewById(R.id.feedView);
feedView.setSDK(feedSDK);
// הגדר מאזין לאינטראקציות
feedView.setFeedViewInteractionListener(new FastCommentsFeedView.OnFeedViewInteractionListener() {
@Override
public void onFeedLoaded(List<FeedPost> posts) {
// הפיד הוטען בהצלחה
}
@Override
public void onFeedError(String errorMessage) {
// טפל בשגיאות
}
@Override
public void onPostSelected(FeedPost post) {
// המשתמש בחר פוסט
}
@Override
public void onCommentsRequested(FeedPost post) {
// הצג תגובות עבור הפוסט
CommentsDialog dialog = new CommentsDialog(context, post, feedSDK);
dialog.show();
}
});
// טען את הפיד
feedView.load();
שילוב צ'אט חי 
הוסף ממשק צ'אט בזמן אמת לאפליקציה שלך:
// הוסף את LiveChatView ל-XML של הפריסה שלך
// <com.fastcomments.sdk.LiveChatView
// android:id="@+id/liveChatView"
// android:layout_width="match_parent"
// android:layout_height="match_parent" />
// צור תצורה עבור ה-SDK
val config = CommentWidgetConfig().apply {
tenantId = "your-tenant-id"
urlId = "chat-room-identifier"
pageTitle = "Chat Room Name"
}
LiveChatView.setupLiveChatConfig(config)
// אופציונלי: הוסף אימות משתמש
val userData = SimpleSSOUserData(
"User Name",
"user@example.com",
"https://path-to-avatar.jpg"
)
val sso = FastCommentsSSO(userData)
config.sso = sso.prepareToSend()
// אתחל את ה-SDK
val sdk = FastCommentsSDK().configure(config)
// הגדר את LiveChatView
val liveChatView = findViewById<LiveChatView>(R.id.liveChatView)
liveChatView.setSDK(sdk)
liveChatView.load()
// אל תשכח לטפל במחזור החיים
override fun onResume() {
super.onResume()
sdk.refreshLiveEvents()
}
override fun onDestroy() {
super.onDestroy()
sdk.cleanup()
}
אפשרויות תצורה 
ה-SDK מספק מגוון אפשרויות תצורה דרך המחלקה CommentWidgetConfig:
| אפשרות | תיאור |
|---|---|
tenantId | מזהה החשבון שלך ב-FastComments |
urlId | מזהה המייצג את הדף הנוכחי |
sso | אסימון SSO לאימות |
allowAnon | אפשר פרסום תגובות אנונימיות |
voteStyle | סגנון הצבעה — UpDown או Heart |
hideAvatars | הסתרת אווטרים של משתמשים |
hasDarkBackground | מציין מצב כהה |
customCSS | סגנונות CSS מותאמים אישית |
enableInfiniteScrolling | הפעלת גלילה אינסופית |
readonly | מניעת פרסום תגובות אך הצגת תגובות קיימות |
disableVoting | השבתת פונקציית ההצבעה |
disableLiveCommenting | השבתת עדכונים בזמן אמת |
התאמה מקיפה של ערכת הנושא 
כל הכפתורים ואלמנטים בממשק המשתמש בערכת הפיתוח של FastComments ניתנים לעיצוב. השתמש ב- FastCommentsTheme.Builder לשליטה מלאה במיתוג של האפליקציה שלך.
עיצוב תכנותי (מומלץ)
val theme = FastCommentsTheme.Builder()
// כפתורי פעולה: שליחה, הצבעה, תפריט, כפתורי לייק/שיתוף
.setActionButtonColor(Color.parseColor("#FF1976D2"))
// כפתורי תגובה: כפתורי מענה להערות
.setReplyButtonColor(Color.parseColor("#FF4CAF50"))
// כפתורי החלפה: כפתורי הצג/הסתר תגובות
.setToggleRepliesButtonColor(Color.parseColor("#FFFF5722"))
// כפתורי טעינת עוד: כפתורי עימוד
.setLoadMoreButtonTextColor(Color.parseColor("#FF9C27B0"))
.setPrimaryColor(Color.parseColor("#FF6200EE"))
.setLinkColor(Color.parseColor("#FF1976D2"))
.setDialogHeaderBackgroundColor(Color.parseColor("#FF333333"))
.build()
// החלת העיצוב
sdk.setTheme(theme)
החלפה מהירה של צבעים
Override color resources in your colors.xml for simple branding:
<!-- בקובץ res/values/colors.xml של האפליקציה שלך -->
<resources>
<!-- שנה את כל רכיבי הממשק הראשיים -->
<color name="primary">#FF1976D2</color>
<!-- או התאם סוגי כפתורים ספציפיים -->
<color name="fastcomments_action_button_color">#FF1976D2</color>
<color name="fastcomments_reply_button_color">#FF4CAF50</color>
<color name="fastcomments_toggle_replies_button_color">#FFFF5722</color>
<color name="fastcomments_load_more_button_text_color">#FF9C27B0</color>
</resources>
כיסוי כפתורים מעוצבים
כל כפתור ב-SDK תומך בעיצוב:
- כפתורי שליחה, כפתורי הצבעה, כפתורי תפריט, כפתורי תגובה
- כפתורי הצג/הסתר תגובות, כפתורי 'טעון עוד'
- כפתורי פעולה בפיד (לייק, תגובה, שיתוף)
- כפתורי דיאלוג (שלח, בטל, שמור)
- כפתורי משימות דינמיים בפוסטים של הפיד
לתיעוד מפורט על ערכות עיצוב, ראו את THEMING.md.
ניהול זיכרון 
מניעת דליפות זיכרון
כדי למנוע דליפות זיכרון בעת שימוש ב־FastComments views ב־Activities או Fragments, תמיד קראו ל־cleanup() כאשר התצוגה כבר לא נדרשת:
ב־Activities:
@Override
protected void onDestroy() {
super.onDestroy();
// נקה תצוגות FastComments כדי למנוע דליפות זיכרון
if (feedView != null) {
feedView.cleanup();
}
if (commentsView != null) {
commentsView.cleanup();
}
}
ב־Fragments:
@Override
public void onDestroyView() {
super.onDestroyView();
// נקה תצוגות FastComments כאשר תצוגת ה־Fragment נהרסת
if (feedView != null) {
feedView.cleanup();
feedView = null;
}
}
@Override
public void onDestroy() {
super.onDestroy();
// ניקוי נוסף כאשר ה־Fragment נהרס
if (feedSDK != null) {
feedSDK.cleanup();
feedSDK = null;
}
}
בעת החלפת Fragments:
// לפני החלפה או הסרה של fragment המכיל תצוגות FastComments
Fragment currentFragment = getSupportFragmentManager().findFragmentById(R.id.container);
if (currentFragment instanceof YourFragmentWithFeedView) {
((YourFragmentWithFeedView) currentFragment).cleanupFeedView();
}
// ואז המשיכו בעסקת ה־fragment
getSupportFragmentManager().beginTransaction()
.replace(R.id.container, newFragment)
.commit();
חשוב: תמיד קראו לשיטות cleanup() כדי למנוע דליפות זיכרון, במיוחד כאשר:
- ה־Activities נהרסות
- תצוגות ה־Fragment נהרסות
- החלפה בין Fragments
- ניווט החוצה ממסכים המכילים רכיבי FastComments
זקוקים לעזרה?
אם אתם נתקלים בבעיות או יש לכם שאלות לגבי ספריית Android, אנא:
תרומות
תרומות מתקבלות בברכה! אנא בקרו ב-מאגר GitHub להנחיות לתרומה.