अवलोकन

Runtime Files Downloader एक प्लगइन है जो रनटाइम पर HTTP / HTTPS के माध्यम से फ़ाइलें डाउनलोड करने के लिए है।
उपयोग कैसे करें
यदि आपको किसी फ़ाइल को स्टोरेज में सहेजने की आवश्यकता है, तो आपको DownloadFileToStorage फ़ंक्शन को कॉल करने की आवश्यकता है।
- Blueprint
- C++

UFileToStorageDownloader::DownloadFileToStorage(TEXT("https://example.com/File.zip"), TEXT("C:/Folder/File.zip"), 15.0f, TEXT(""), false,
FOnDownloadProgressNative::CreateLambda([](int64 BytesReceived, int64 ContentSize, float ProgressRatio)
{
UE_LOG(LogTemp, Log, TEXT("Download progress: %f"), ProgressRatio);
}), FOnFileToStorageDownloadCompleteNative::CreateLambda([](EDownloadToStorageResult Result, const FString& SavedPath, UFileToStorageDownloader* Downloader)
{
UE_LOG(LogTemp, Log, TEXT("Download complete, result: %s, saved path: %s"), *UEnum::GetValueAsString(Result), *SavedPath);
}));
यदि आपको फ़ाइल को सहेजने की आवश्यकता नहीं है, बल्कि केवल डाउनलोड की गई सामग्री तक पहुंच प्राप्त करनी है, तो आपको DownloadFileToMemory फ़ंक्शन को कॉल करने की आवश्यकता है।
- Blueprint
- C++

UFileToMemoryDownloader::DownloadFileToMemory(TEXT("https://example.com/File.zip"), 15.0f, TEXT(""), false,
FOnDownloadProgressNative::CreateLambda([](int64 BytesReceived, int64 ContentSize, float ProgressRatio)
{
UE_LOG(LogTemp, Log, TEXT("Download progress: %f"), ProgressRatio);
}), FOnFileToMemoryDownloadCompleteNative::CreateLambda([](const TArray64<uint8>& DownloadedContent, EDownloadToMemoryResult Result, UFileToMemoryDownloader* Downloader)
{
UE_LOG(LogTemp, Log, TEXT("Download complete, result: %s, DownloadedContent size: %d"), *UEnum::GetValueAsString(Result), DownloadedContent.Num());
}));
वैकल्पिक रूप से, आप Content Type फ़ील्ड में एक MIME प्रकार दर्ज करके डाउनलोड करने के लिए फ़ाइल का प्रकार निर्दिष्ट कर सकते हैं।
सबसे सामान्य MIME प्रकारों की एक सूची यहाँ सूचीबद्ध है।
डाउनलोड शुरू होने के बाद, आप CancelDownload फ़ंक्शन का उपयोग करके इसे रद्द कर सकते हैं।
- Blueprint
- C++

// Assuming Downloader is a UE reference to a UFileToStorageDownloader or UFileToMemoryDownloader object
Downloader->CancelDownload();
कृपया ध्यान दें कि UE 5.4 से शुरू होकर, टाइमआउट पैरामीटर इस तरह से व्यवहार करता है कि यदि डाउनलोड करने में लिया गया कुल समय टाइमआउट से अधिक हो जाता है, तो यह डाउनलोड के दौरान ही अनुरोध को रद्द कर देता है, जो UE में एक प्रकार की बग है। कृपया या तो एक बड़ा मान निर्दिष्ट करें (जैसे 3600 सेकंड, जो 1 घंटा है) या इसे शून्य के रूप में निर्दिष्ट करें ताकि टाइमआउट को पूरी तरह से अक्षम किया जा सके।
अतिरिक्त संसाधन
- Fab पर इसे प्राप्त करें
- Discord सहायता सर्वर
- प्लगइन समर्थन और कस्टम विकास: [email protected] (टीमों और संगठनों के लिए अनुरूप समाधान)