У меня есть следующий код, чтобы показать подсказку о рейтингах, когда пользователь возвращается в приложение во второй раз и не видел подсказки. Он просит пользователя оценить мое приложение в App Store. Я нахожусь в последней версии iOS.import StoreKit
import UIKit
struct RatingPrompt {
private static let firstVisitKey = "firstVisitDate"
private static let hasShownPromptKey = "hasShownRatingPrompt"
private static let hasShownAfterFirstSummaryKey = "hasShownAfterFirstSummary"
/// Call when user opens the app / visits a main screen
static func trackVisitAndShowPromptIfNeeded() {
let defaults = UserDefaults.standard
let now = Date()
// Save first visit date
if defaults.object(forKey: firstVisitKey) == nil {
defaults.set(now, forKey: firstVisitKey)
return
}
// If already shown via visit or summary, do nothing
if defaults.bool(forKey: hasShownPromptKey) {
return
}
// Check if at least 1 day passed
if let firstVisit = defaults.object(forKey: firstVisitKey) as? Date {
let oneDay: TimeInterval = 60 * 60 * 24
if now.timeIntervalSince(firstVisit) >= oneDay {
requestReview()
defaults.set(true, forKey: hasShownPromptKey)
}
}
}
/// Call when user reads their first book summary
static func trackFirstSummaryRead() {
let defaults = UserDefaults.standard
// If already shown, do nothing
if defaults.bool(forKey: hasShownPromptKey) || defaults.bool(forKey: hasShownAfterFirstSummaryKey) {
return
}
// Show immediately on first summary read
requestReview()
defaults.set(true, forKey: hasShownAfterFirstSummaryKey)
defaults.set(true, forKey: hasShownPromptKey) // ensure it won't show again
}
/// Internal helper to request review
private static func requestReview() {
if let windowScene = UIApplication.shared.connectedScenes.first as? UIWindowScene,
let window = windowScene.windows.first {
SKStoreReviewController.requestReview(in: window.windowScene!)
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/797 ... ngs-prompt
Не могу увидеть рейтинговые подсказки ⇐ IOS
Программируем под IOS
1757000061
Anonymous
У меня есть следующий код, чтобы показать подсказку о рейтингах, когда пользователь возвращается в приложение во второй раз и не видел подсказки. Он просит пользователя оценить мое приложение в App Store. Я нахожусь в последней версии iOS.import StoreKit
import UIKit
struct RatingPrompt {
private static let firstVisitKey = "firstVisitDate"
private static let hasShownPromptKey = "hasShownRatingPrompt"
private static let hasShownAfterFirstSummaryKey = "hasShownAfterFirstSummary"
/// Call when user opens the app / visits a main screen
static func trackVisitAndShowPromptIfNeeded() {
let defaults = UserDefaults.standard
let now = Date()
// Save first visit date
if defaults.object(forKey: firstVisitKey) == nil {
defaults.set(now, forKey: firstVisitKey)
return
}
// If already shown via visit or summary, do nothing
if defaults.bool(forKey: hasShownPromptKey) {
return
}
// Check if at least 1 day passed
if let firstVisit = defaults.object(forKey: firstVisitKey) as? Date {
let oneDay: TimeInterval = 60 * 60 * 24
if now.timeIntervalSince(firstVisit) >= oneDay {
requestReview()
defaults.set(true, forKey: hasShownPromptKey)
}
}
}
/// Call when user reads their first book summary
static func trackFirstSummaryRead() {
let defaults = UserDefaults.standard
// If already shown, do nothing
if defaults.bool(forKey: hasShownPromptKey) || defaults.bool(forKey: hasShownAfterFirstSummaryKey) {
return
}
// Show immediately on first summary read
requestReview()
defaults.set(true, forKey: hasShownAfterFirstSummaryKey)
defaults.set(true, forKey: hasShownPromptKey) // ensure it won't show again
}
/// Internal helper to request review
private static func requestReview() {
if let windowScene = UIApplication.shared.connectedScenes.first as? UIWindowScene,
let window = windowScene.windows.first {
SKStoreReviewController.requestReview(in: window.windowScene!)
}
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79755798/cant-see-ratings-prompt[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия