From 9bb554260c63842b23919b1f128b9cc8488b7f50 Mon Sep 17 00:00:00 2001 From: hank <hank.zhang@proficientcity.com> Date: Tue, 22 Jan 2019 11:15:22 +0800 Subject: [PATCH] 添加V3.8.0 --- res/ElvaChatServiceSDK.bundle/vi-VN.lproj/Localizable.strings | 24 res/ElvaChatServiceSDK.bundle/tr.lproj/Localizable.strings | 37 res/ElvaChatServiceSDK.bundle/es.lproj/Localizable.strings | 37 res/ElvaChatServiceSDK.bundle/en.lproj/Localizable.strings | 37 res/ElvaChatServiceSDK.bundle/ru.lproj/Localizable.strings | 39 config/wa_sdk_impl_config_aihelp.xml | 2 res/ElvaChatServiceSDK.bundle/sv-SE.lproj/Localizable.strings | 24 res/ElvaChatServiceSDK.bundle/it-IT.lproj/Localizable.strings | 32 + res/ElvaChatServiceSDK.bundle/fa.lproj/Localizable.strings | 32 + res/ElvaChatServiceSDK.bundle/pl-PL.lproj/Localizable.strings | 32 + res/ElvaChatServiceSDK.bundle/ko.lproj/Localizable.strings | 37 frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeRequirements-1 | 0 res/ElvaChatServiceSDK.bundle/ar.lproj/Localizable.strings | 39 res/ElvaChatServiceSDK.bundle/ab_reward.png | 0 res/ElvaChatServiceSDK.bundle/checkbox_unchecked.png | 0 frameworks/ElvaChatServiceSDK.framework/Info.plist | 0 res/ElvaChatServiceSDK.bundle/de.lproj/Localizable.strings | 24 res/ElvaChatServiceSDK.bundle/fr-FR.lproj/Localizable.strings | 24 res/ElvaChatServiceSDK.bundle/ja.lproj/Localizable.strings | 37 frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeSignature | 0 frameworks/WAAIhelpImpl.framework/WAAIhelpImpl | 0 frameworks/ElvaChatServiceSDK.framework/Headers/UnityRendering.h | 293 ++++++++++ frameworks/ElvaChatServiceSDK.framework/Headers/UnityForwardDecls.h | 191 +++++++ res/ElvaChatServiceSDK.bundle/checkbox_checked.png | 0 /dev/null | 25 res/ElvaChatServiceSDK.bundle/zh-Hant.lproj/Localizable.strings | 40 res/ElvaChatServiceSDK.bundle/zh-Hans.lproj/Localizable.strings | 37 res/ElvaChatServiceSDK.bundle/pt-PT.lproj/Localizable.strings | 24 res/ElvaChatServiceSDK.bundle/el-GR.lproj/Localizable.strings | 32 + frameworks/WAAIhelpImpl.framework/Info.plist | 0 frameworks/WAAIhelpImpl.framework/Headers/WAAIhelpImpl.h | 2 frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeResources | 53 + res/ElvaChatServiceSDK.bundle/th.lproj/Localizable.strings | 37 frameworks/ElvaChatServiceSDK.framework/Headers/ECServiceSdk.h | 6 res/ElvaChatServiceSDK.bundle/id-ID.lproj/Localizable.strings | 18 frameworks/ElvaChatServiceSDK.framework/Headers/UnityInterface.h | 371 +++++++++++++ frameworks/ElvaChatServiceSDK.framework/ElvaChatServiceSDK | 0 frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeDirectory | 0 WAAiHelpImpl.podspec | 6 39 files changed, 1,342 insertions(+), 250 deletions(-) diff --git a/WAAiHelpImpl.podspec b/WAAiHelpImpl.podspec index 07c3f8e..fa7dae0 100644 --- a/WAAiHelpImpl.podspec +++ b/WAAiHelpImpl.podspec @@ -9,7 +9,7 @@ Pod::Spec.new do |s| s.name = 'WAAiHelpImpl' -s.version = '3.7.0' +s.version = '3.8.0' s.summary = 'WAAfImpl framework in testing environment.' s.license = 'MIT' s.author = { "Hank" => "hank.zhang@gamehollywood.com" } @@ -22,6 +22,6 @@ s.libraries = 'sqlite3' s.resources = ['config/*.xml','res/ElvaChatServiceSDK.bundle','res/ElvaChatServiceSDK.bundle','res/*.xib','res/Localization/*/*.strings'] s.requires_arc = true -s.dependency 'WASdkIntf', '~> 3.7.0' #此处添加私有库依赖 -s.dependency 'WASdkImpl', '~> 3.7.0' +s.dependency 'WASdkIntf', '~> 3.8.0' #此处添加私有库依赖 +s.dependency 'WASdkImpl', '~> 3.8.0' end diff --git a/config/wa_sdk_impl_config_aihelp.xml b/config/wa_sdk_impl_config_aihelp.xml index dd14251..cc09658 100644 --- a/config/wa_sdk_impl_config_aihelp.xml +++ b/config/wa_sdk_impl_config_aihelp.xml @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <config> - <version val="AIHELP3.7.0"/> + <version val="AIHELP3.8.0"/> <comps> <!-- 公共模块 --> <comp module="CORE" plaf="AIHELP" mandatory="YES" value="WAAIhelpCore" desc="公共模块"/> diff --git a/frameworks/ElvaChatServiceSDK.framework/ElvaChatServiceSDK b/frameworks/ElvaChatServiceSDK.framework/ElvaChatServiceSDK index 569c855..acbb33e 100755 --- a/frameworks/ElvaChatServiceSDK.framework/ElvaChatServiceSDK +++ b/frameworks/ElvaChatServiceSDK.framework/ElvaChatServiceSDK Binary files differ diff --git a/frameworks/ElvaChatServiceSDK.framework/Headers/ECServiceSdk.h b/frameworks/ElvaChatServiceSDK.framework/Headers/ECServiceSdk.h index 2bdd527..2cdd57e 100755 --- a/frameworks/ElvaChatServiceSDK.framework/Headers/ECServiceSdk.h +++ b/frameworks/ElvaChatServiceSDK.framework/Headers/ECServiceSdk.h @@ -6,7 +6,8 @@ #import <Foundation/Foundation.h> @interface ECServiceSdk:NSObject - ++ (void) registerUnityOnInitializedCallback:(NSString *) gameObject; ++ (void) registerUnityOnMessageArrivedCallback:(NSString *) gameObject; + (void) init:(NSString*) appSecret Domain:(NSString*) domain AppId:(NSString*) appId; + (void) showElva:(NSString*) playerName PlayerUid:(NSString*) playerUid ServerId:(NSString*) serverId PlayerParseId:(NSString*) playerParseId PlayershowConversationFlag:(NSString*) playershowConversationFlag; + (void) showElva:(NSString*) playerName PlayerUid:(NSString*) playerUid ServerId:(NSString*) serverId PlayerParseId:(NSString*) playerParseId PlayershowConversationFlag:(NSString*) playershowConversationFlag Config:(NSMutableDictionary*) config; @@ -30,6 +31,7 @@ + (void) setNoMenu; + (void) setSendCloseNotification:(BOOL) isSend; + (void) setAccelerateDomain:(NSString *)domain; ++ (void) setOpenLog:(BOOL)isOpen; + (void) showVIPChat:(NSString*) appidWeb VIPTags:(NSString *) vipTags; @@ -44,5 +46,7 @@ + (void) handlePushNotification:(NSDictionary *) table DataFromInApp:(BOOL) dataFromInApp; + (int) getNotificationMessageCount; ++ (void) showURL:(NSString *) url; ++ (void) setUnreadMessageFetchUid:(NSString*) playerUid; @end diff --git a/frameworks/ElvaChatServiceSDK.framework/Headers/UnityForwardDecls.h b/frameworks/ElvaChatServiceSDK.framework/Headers/UnityForwardDecls.h new file mode 100755 index 0000000..ab50faa --- /dev/null +++ b/frameworks/ElvaChatServiceSDK.framework/Headers/UnityForwardDecls.h @@ -0,0 +1,191 @@ +#pragma once + +#include <stdint.h> + +#ifdef __OBJC__ +@class UIScreen; +@class UIWindow; +@class UIView; +@class UIViewController; +@class UIEvent; +@class UILocalNotification; +@class NSString; +@class NSDictionary; +@class NSSet; +@class NSData; +@class NSError; +@class NSBundle; + +@class UnityViewControllerBase; +#else +typedef struct objc_object UIScreen; +typedef struct objc_object UIWindow; +typedef struct objc_object UIView; +typedef struct objc_object UIViewController; +typedef struct objc_object UIEvent; +typedef struct objc_object UILocalNotification; +typedef struct objc_object NSString; +typedef struct objc_object NSDictionary; +typedef struct objc_object NSSet; +typedef struct objc_object NSError; +typedef struct objc_object NSData; +typedef struct objc_object NSBundle; + +typedef struct objc_object UnityViewControllerBase; +#endif + +// unity internal audio effect definition struct +struct UnityAudioEffectDefinition; + +// new unity rendering api +struct IUnityInterfaces; + +// be aware that this struct is shared with unity implementation so you should absolutely not change it +struct UnityFrameStats +{ + uint64_t fixedBehaviourManagerDt; + uint64_t fixedPhysicsManagerDt; + uint64_t dynamicBehaviourManagerDt; + uint64_t coroutineDt; + uint64_t skinMeshUpdateDt; + uint64_t animationUpdateDt; + uint64_t renderDt; + uint64_t cullingDt; + uint64_t clearDt; + int fixedUpdateCount; + + int batchCount; + uint64_t drawCallTime; + int drawCallCount; + int triCount; + int vertCount; + + uint64_t dynamicBatchDt; + int dynamicBatchCount; + int dynamicBatchedDrawCallCount; + int dynamicBatchedTris; + int dynamicBatchedVerts; + + int staticBatchCount; + int staticBatchedDrawCallCount; + int staticBatchedTris; + int staticBatchedVerts; +}; + + +// be aware that this enum is shared with unity implementation so you should absolutely not change it +typedef enum + LogType +{ + logError = 0, + logAssert = 1, + logWarning = 2, + logLog = 3, + logException = 4, + logDebug = 5, +} +LogType; + + +// be aware that this enum is shared with unity implementation so you should absolutely not change it +typedef enum + DeviceGeneration +{ + deviceUnknown = 0, + deviceiPhone3GS = 3, + deviceiPhone4 = 8, + deviceiPodTouch4Gen = 9, + deviceiPad2Gen = 10, + deviceiPhone4S = 11, + deviceiPad3Gen = 12, + deviceiPhone5 = 13, + deviceiPodTouch5Gen = 14, + deviceiPadMini1Gen = 15, + deviceiPad4Gen = 16, + deviceiPhone5C = 17, + deviceiPhone5S = 18, + deviceiPadAir1 = 19, + deviceiPadMini2Gen = 20, + deviceiPhone6 = 21, + deviceiPhone6Plus = 22, + deviceiPadMini3Gen = 23, + deviceiPadAir2 = 24, + deviceiPhone6S = 25, + deviceiPhone6SPlus = 26, + deviceiPadPro1Gen = 27, + deviceiPadMini4Gen = 28, + deviceiPhoneSE1Gen = 29, + deviceiPadPro10Inch1Gen = 30, + deviceiPhone7 = 31, + deviceiPhone7Plus = 32, + deviceiPodTouch6Gen = 33, + deviceiPad5Gen = 34, + deviceiPadPro2Gen = 35, + deviceiPadPro10Inch2Gen = 36, + + deviceiPhoneUnknown = 10001, + deviceiPadUnknown = 10002, + deviceiPodTouchUnknown = 10003, +} +DeviceGeneration; + + +// be aware that this enum is shared with unity implementation so you should absolutely not change it +typedef enum + ScreenOrientation +{ + orientationUnknown, + portrait, + portraitUpsideDown, + landscapeLeft, + landscapeRight, + + orientationCount, +} +ScreenOrientation; + + +// be aware that this enum is shared with unity implementation so you should absolutely not change it +typedef enum + AppInBackgroundBehavior +{ + appbgCustom = -1, + appbgSuspend = 0, + appbgExit = 1, +} +AppInBackgroundBehavior; + + +// this dictates touches processing on os level: should we transform touches to unity view coords or not. +// N.B. touch.position will always be adjusted to current resolution +// i.e. if you touch right border of view, touch.position.x will be Screen.width, not view.width +// to get coords in view space (os-coords), use touch.rawPosition +typedef enum + ViewTouchProcessing +{ + // the touches originated from view will be ignored by unity + touchesIgnored = 0, + + // touches would be processed as if they were originated in unity view: + // coords will be transformed from view coords to unity view coords + touchesTransformedToUnityViewCoords = 1, + + // touches coords will be kept intact (in originated view coords) + // it is default value + touchesKeptInOriginalViewCoords = 2, +} +ViewTouchProcessing; + +#ifdef __cplusplus +extern bool _ios42orNewer; +extern bool _ios43orNewer; +extern bool _ios50orNewer; +extern bool _ios60orNewer; +extern bool _ios70orNewer; +extern bool _ios80orNewer; +extern bool _ios81orNewer; +extern bool _ios82orNewer; +extern bool _ios90orNewer; +extern bool _ios91orNewer; +extern bool _ios100orNewer; +#endif diff --git a/frameworks/ElvaChatServiceSDK.framework/Headers/UnityInterface.h b/frameworks/ElvaChatServiceSDK.framework/Headers/UnityInterface.h new file mode 100755 index 0000000..1b3e2a7 --- /dev/null +++ b/frameworks/ElvaChatServiceSDK.framework/Headers/UnityInterface.h @@ -0,0 +1,371 @@ +#pragma once + +#include <stdint.h> +#include <stdarg.h> + +#include "UnityForwardDecls.h" +#include "UnityRendering.h" + +// unity plugin functions + +// audio plugin api +typedef int (*UnityPluginGetAudioEffectDefinitionsFunc)(struct UnityAudioEffectDefinition*** descptr); + +// OLD rendering plugin api (will become obsolete soon) +typedef void (*UnityPluginSetGraphicsDeviceFunc)(void* device, int deviceType, int eventType); +typedef void (*UnityPluginRenderMarkerFunc)(int marker); + +// new rendering plugin api +typedef void (*UnityPluginLoadFunc)(struct IUnityInterfaces* unityInterfaces); +typedef void (*UnityPluginUnloadFunc)(); + + +// log handler function +#ifdef __cplusplus +typedef bool (*LogEntryHandler)(LogType logType, const char* log, va_list list); +#endif + +// +// these are functions referenced in trampoline and implemented in unity player lib +// + +#ifdef __cplusplus +extern "C" { +#endif + +// life cycle management + +void UnityInitStartupTime(); +void UnityInitRuntime(int argc, char* argv[]); +void UnityInitApplicationNoGraphics(const char* appPathName); +void UnityInitApplicationGraphics(int forceDirectRendering); +void UnityCleanup(); +void UnityLoadApplication(); +void UnityPlayerLoop(); // normal player loop +void UnityBatchPlayerLoop(); // batch mode like player loop, without rendering (usable for background processing) +void UnitySetPlayerFocus(int focused); // send OnApplicationFocus() message to scripts +void UnityLowMemory(); +void UnityPause(int pause); +int UnityIsPaused(); // 0 if player is running, 1 if paused +void UnityWillPause(); // send the message that app will pause +void UnityWillResume(); // send the message that app will resume +void UnityInputProcess(); +void UnityDeliverUIEvents(); // unity processing impacting UI will be called in there + + +// rendering + +int UnityGetRenderingAPIs(int capacity, int* outAPIs); +void UnityFinishRendering(); + +// OpenGL ES. + +int UnityHasRenderingAPIExtension(const char* extension); +void UnityOnSetCurrentGLContext(EAGLContext* context); + +// This must match the one in ApiEnumsGLES.h +typedef enum UnityFramebufferTarget +{ + kDrawFramebuffer = 0, + kReadFramebuffer, + kFramebufferTargetCount +} UnityFramebufferTarget; +void UnityBindFramebuffer(UnityFramebufferTarget target, int fbo); +void UnityRegisterFBO(UnityRenderBufferHandle color, UnityRenderBufferHandle depth, unsigned fbo); + +// controling player internals + +// TODO: needs some cleanup +void UnitySetAudioSessionActive(int active); +void UnityGLInvalidateState(); +void UnityReloadResources(); +int UnityIsCaptureScreenshotRequested(); +void UnityCaptureScreenshot(); +void UnitySendMessage(const char* obj, const char* method, const char* msg); + +EAGLContext* UnityGetDataContextGLES(); + +#ifdef __cplusplus +void UnitySetLogEntryHandler(LogEntryHandler newHandler); +#endif + + +// plugins support + +// WARNING: old UnityRegisterRenderingPlugin will become obsolete soon +void UnityRegisterRenderingPlugin(UnityPluginSetGraphicsDeviceFunc setDevice, UnityPluginRenderMarkerFunc renderMarker); + +void UnityRegisterRenderingPluginV5(UnityPluginLoadFunc loadPlugin, UnityPluginUnloadFunc unloadPlugin); +void UnityRegisterAudioPlugin(UnityPluginGetAudioEffectDefinitionsFunc getAudioEffectDefinitions); + + +// resolution/orientation handling + +void UnityGetRenderingResolution(unsigned* w, unsigned* h); +void UnityGetSystemResolution(unsigned* w, unsigned* h); + +void UnityRequestRenderingResolution(unsigned w, unsigned h); + +int UnityIsOrientationEnabled(unsigned /*ScreenOrientation*/ orientation); + +int UnityHasOrientationRequest(); +int UnityShouldAutorotate(); +int UnityRequestedScreenOrientation(); // returns ScreenOrientation +void UnityOrientationRequestWasCommitted(); + +int UnityReportResizeView(unsigned w, unsigned h, unsigned /*ScreenOrientation*/ contentOrientation); // returns ScreenOrientation +void UnityReportBackbufferChange(UnityRenderBufferHandle colorBB, UnityRenderBufferHandle depthBB); + + +// player settings + +int UnityDisableDepthAndStencilBuffers(); +int UnityUseAnimatedAutorotation(); +int UnityGetDesiredMSAASampleCount(int defaultSampleCount); +int UnityGetSRGBRequested(); +int UnityGetShowActivityIndicatorOnLoading(); +int UnityGetAccelerometerFrequency(); +int UnityGetTargetFPS(); +int UnityGetAppBackgroundBehavior(); + + +// push notifications +#if !UNITY_TVOS +void UnitySendLocalNotification(UILocalNotification* notification); +#endif +void UnitySendRemoteNotification(NSDictionary* notification); +void UnitySendDeviceToken(NSData* deviceToken); +void UnitySendRemoteNotificationError(NSError* error); + +// native events + +void UnityInvalidateDisplayDataCache(void* screen); +void UnityUpdateDisplayList(void** screens, int screenCount); + + +// profiler + +void* UnityCreateProfilerCounter(const char*); +void UnityDestroyProfilerCounter(void*); +void UnityStartProfilerCounter(void*); +void UnityEndProfilerCounter(void*); + + +// sensors + +void UnitySensorsSetGyroRotationRate(int idx, float x, float y, float z); +void UnitySensorsSetGyroRotationRateUnbiased(int idx, float x, float y, float z); +void UnitySensorsSetGravity(int idx, float x, float y, float z); +void UnitySensorsSetUserAcceleration(int idx, float x, float y, float z); +void UnitySensorsSetAttitude(int idx, float x, float y, float z, float w); +void UnityDidAccelerate(float x, float y, float z, double timestamp); +void UnitySetJoystickPosition(int joyNum, int axis, float pos); +int UnityStringToKey(const char *name); +void UnitySetKeyState(int key, int /*bool*/ state); + +// WWW connection handling + +void UnityReportWWWStatusError(void* udata, int status, const char* error); + +void UnityReportWWWReceivedResponse(void* udata, int status, unsigned expectedDataLength, const char* respHeader); +void UnityReportWWWReceivedData(void* udata, const void* buffer, unsigned totalRead, unsigned expectedTotal); +void UnityReportWWWFinishedLoadingData(void* udata); +void UnityReportWWWSentData(void* udata, unsigned totalWritten, unsigned expectedTotal); + +// AVCapture + +void UnityReportAVCapturePermission(); +void UnityDidCaptureVideoFrame(intptr_t tex, void* udata); + +// logging override + +#ifdef __cplusplus +} // extern "C" +#endif + + +// touches processing + +#ifdef __cplusplus +extern "C" { +#endif + +void UnitySetViewTouchProcessing(UIView* view, int /*ViewTouchProcessing*/ processingPolicy); +void UnityDropViewTouchProcessing(UIView* view); + +void UnitySendTouchesBegin(NSSet* touches, UIEvent* event); +void UnitySendTouchesEnded(NSSet* touches, UIEvent* event); +void UnitySendTouchesCancelled(NSSet* touches, UIEvent* event); +void UnitySendTouchesMoved(NSSet* touches, UIEvent* event); + +void UnityCancelTouches(); + +#ifdef __cplusplus +} // extern "C" +#endif + + +// +// these are functions referenced and implemented in trampoline +// + +#ifdef __cplusplus +extern "C" { +#endif + +// UnityAppController.mm +UIViewController* UnityGetGLViewController(); +UIView* UnityGetGLView(); +UIWindow* UnityGetMainWindow(); +enum ScreenOrientation UnityCurrentOrientation(); + +// Unity/DisplayManager.mm +float UnityScreenScaleFactor(UIScreen* screen); + +#ifdef __cplusplus +} // extern "C" +#endif + + +// +// these are functions referenced in unity player lib and implemented in trampoline +// + +#ifdef __cplusplus +extern "C" { +#endif + +// iPhone_Sensors.mm +void UnityInitJoysticks(); +void UnityCoreMotionStart(); +void UnityCoreMotionStop(); +int UnityIsGyroEnabled(int idx); +int UnityIsGyroAvailable(); +void UnityUpdateGyroData(); +void UnitySetGyroUpdateInterval(int idx, float interval); +float UnityGetGyroUpdateInterval(int idx); +void UnityUpdateJoystickData(); +int UnityGetJoystickCount(); +void UnityGetJoystickName(int idx, char* buffer, int maxLen); +void UnityGetJoystickAxisName(int idx, int axis, char* buffer, int maxLen); +void UnityGetNiceKeyname(int key, char* buffer, int maxLen); + +// UnityAppController+Rendering.mm +void UnityInitMainScreenRenderingCallback(); +void UnityGfxInitedCallback(); +void UnityPresentContextCallback(struct UnityFrameStats const* frameStats); +void UnityFramerateChangeCallback(int targetFPS); +int UnitySelectedRenderingAPI(); + +NSBundle* UnityGetMetalBundle(); +MTLDeviceRef UnityGetMetalDevice(); +MTLCommandQueueRef UnityGetMetalCommandQueue(); + +EAGLContext* UnityGetDataContextEAGL(); + +UnityRenderBufferHandle UnityBackbufferColor(); +UnityRenderBufferHandle UnityBackbufferDepth(); + +// UI/ActivityIndicator.mm +void UnityStartActivityIndicator(); +void UnityStopActivityIndicator(); + +// UI/Keyboard.mm +void UnityKeyboard_Create(unsigned keyboardType, int autocorrection, int multiline, int secure, int alert, const char* text, const char* placeholder); +void UnityKeyboard_Show(); +void UnityKeyboard_Hide(); +void UnityKeyboard_GetRect(float* x, float* y, float* w, float* h); +void UnityKeyboard_SetText(const char* text); +NSString* UnityKeyboard_GetText(); +int UnityKeyboard_IsActive(); +int UnityKeyboard_IsDone(); +int UnityKeyboard_WasCanceled(); +void UnityKeyboard_SetInputHidden(int hidden); +int UnityKeyboard_IsInputHidden(); + +int UnityKeyboard_CanGetSelection(); +void UnityKeyboard_GetSelection(int* location, int* range); + +// UI/UnityViewControllerBase.mm +void UnityNotifyAutoOrientationChange(); + +// Unity/AVCapture.mm +int UnityGetAVCapturePermission(int captureTypes); +void UnityRequestAVCapturePermission(int captureTypes); + +// Unity/CameraCapture.mm +void UnityEnumVideoCaptureDevices(void* udata, void(*callback)(void* udata, const char* name, int frontFacing)); +void* UnityInitCameraCapture(int device, int w, int h, int fps, void* udata); +void UnityStartCameraCapture(void* capture); +void UnityPauseCameraCapture(void* capture); +void UnityStopCameraCapture(void* capture); +void UnityCameraCaptureExtents(void* capture, int* w, int* h); +void UnityCameraCaptureReadToMemory(void* capture, void* dst, int w, int h); +int UnityCameraCaptureVideoRotationDeg(void* capture); +int UnityCameraCaptureVerticallyMirrored(void* capture); + + +// Unity/DeviceSettings.mm +const char* UnityDeviceUniqueIdentifier(); +const char* UnityVendorIdentifier(); +const char* UnityAdvertisingIdentifier(); +int UnityAdvertisingTrackingEnabled(); +const char* UnityDeviceName(); +const char* UnitySystemName(); +const char* UnitySystemVersion(); +const char* UnityDeviceModel(); +int UnityDeviceCPUCount(); +int UnityDeviceGeneration(); +float UnityDeviceDPI(); +const char* UnitySystemLanguage(); + +// Unity/DisplayManager.mm +EAGLContext* UnityGetMainScreenContextGLES(); +EAGLContext* UnityGetContextEAGL(); +void UnityStartFrameRendering(); +void UnityDestroyUnityRenderSurfaces(); + +// Unity/Filesystem.mm +const char* UnityApplicationDir(); +const char* UnityDocumentsDir(); +const char* UnityLibraryDir(); +const char* UnityCachesDir(); +int UnityUpdateNoBackupFlag(const char* path, int setFlag); // Returns 1 if successful, otherwise 0 + +// Unity/WWWConnection.mm +void* UnityStartWWWConnectionGet(void* udata, const void* headerDict, const char* url); +void* UnityStartWWWConnectionPost(void* udata, const void* headerDict, const char* url, const void* data, unsigned length); +void UnityDestroyWWWConnection(void* connection); +void UnityShouldCancelWWW(const void* connection); + +//Apple TV Remote +int UnityGetAppleTVRemoteAllowExitToMenu(); +void UnitySetAppleTVRemoteAllowExitToMenu(int val); +int UnityGetAppleTVRemoteAllowRotation(); +void UnitySetAppleTVRemoteAllowRotation(int val); +int UnityGetAppleTVRemoteReportAbsoluteDpadValues(); +void UnitySetAppleTVRemoteReportAbsoluteDpadValues(int val); +int UnityGetAppleTVRemoteTouchesEnabled(); +void UnitySetAppleTVRemoteTouchesEnabled(int val); + +#ifdef __cplusplus +} // extern "C" +#endif + + +#ifdef __OBJC__ +// This is basically a wrapper for [NSString UTF8String] with additional strdup. +// +// Apparently multiple calls on UTF8String will leak memory (NSData objects) that are collected +// only when @autoreleasepool is exited. This function serves as documentation for this and as a +// handy wrapper. +inline char* AllocCString(NSString* value) +{ + if (value == nil) + return 0; + + const char* str = [value UTF8String]; + return str ? strdup(str) : 0; +} + +#endif diff --git a/frameworks/ElvaChatServiceSDK.framework/Headers/UnityRendering.h b/frameworks/ElvaChatServiceSDK.framework/Headers/UnityRendering.h new file mode 100755 index 0000000..8c74ff4 --- /dev/null +++ b/frameworks/ElvaChatServiceSDK.framework/Headers/UnityRendering.h @@ -0,0 +1,293 @@ +#pragma once + +#ifdef __OBJC__ +@class CAEAGLLayer; +@class EAGLContext; +#else +typedef struct objc_object CAEAGLLayer; +typedef struct objc_object EAGLContext; +#endif + +#ifdef __OBJC__ +@class CAMetalLayer; +@protocol CAMetalDrawable; +@protocol MTLDrawable; +@protocol MTLDevice; +@protocol MTLTexture; +@protocol MTLCommandBuffer; +@protocol MTLCommandQueue; +@protocol MTLCommandEncoder; + +typedef id<CAMetalDrawable> CAMetalDrawableRef; +typedef id<MTLDevice> MTLDeviceRef; +typedef id<MTLTexture> MTLTextureRef; +typedef id<MTLCommandBuffer> MTLCommandBufferRef; +typedef id<MTLCommandQueue> MTLCommandQueueRef; +typedef id<MTLCommandEncoder> MTLCommandEncoderRef; +#else +typedef struct objc_object CAMetalLayer; +typedef struct objc_object* CAMetalDrawableRef; +typedef struct objc_object* MTLDeviceRef; +typedef struct objc_object* MTLTextureRef; +typedef struct objc_object* MTLCommandBufferRef; +typedef struct objc_object* MTLCommandQueueRef; +typedef struct objc_object* MTLCommandEncoderRef; +#endif + +// unity internal native render buffer struct (the one you acquire in C# with RenderBuffer.GetNativeRenderBufferPtr()) +struct RenderSurfaceBase; +typedef struct RenderSurfaceBase* UnityRenderBufferHandle; + +// be aware that this struct is shared with unity implementation so you should absolutely not change it +typedef struct + UnityRenderBufferDesc +{ + unsigned width, height, depth; + unsigned samples; + + int backbuffer; +} +UnityRenderBufferDesc; + +// trick to make structure inheritance work transparently between c/cpp +// for c we use "anonymous struct" +#ifdef __cplusplus + #define START_STRUCT(T, Base) struct T : Base { + #define END_STRUCT(T) }; +#else + #define START_STRUCT(T, Base) typedef struct T { struct Base; + #define END_STRUCT(T) } T; +#endif + +// we will keep objc objects in struct, so we need to explicitely mark references as strong to not confuse ARC +// please note that actual object lifetime is managed in objc++ code, so __unsafe_unretained is good enough for objc code +// DO NOT assign objects to UnityDisplaySurface* members in objc code. +// DO NOT store objects from UnityDisplaySurface* members in objc code, as this wont be caught by ARC +#ifdef __OBJC__ + #ifdef __cplusplus + #define OBJC_OBJECT_PTR __strong + #else + #define OBJC_OBJECT_PTR __unsafe_unretained + #endif +#else + #define OBJC_OBJECT_PTR +#endif + +// unity common rendering (display) surface +typedef struct + UnityDisplaySurfaceBase +{ + UnityRenderBufferHandle unityColorBuffer; + UnityRenderBufferHandle unityDepthBuffer; + + UnityRenderBufferHandle systemColorBuffer; + UnityRenderBufferHandle systemDepthBuffer; + + void* cvTextureCache; // CVOpenGLESTextureCacheRef + void* cvTextureCacheTexture; // CVOpenGLESTextureRef + void* cvPixelBuffer; // CVPixelBufferRef + + unsigned targetW, targetH; + unsigned systemW, systemH; + + int msaaSamples; + int useCVTextureCache; // [bool] + int srgb; // [bool] + int disableDepthAndStencil; // [bool] + int allowScreenshot; // [bool] currently we allow screenshots (from script) only on main display + + int api; // [UnityRenderingAPI] +} +UnityDisplaySurfaceBase; + + +// START_STRUCT confuse clang c compiler (though it is idiomatic c code that works) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wmissing-declarations" + +// GLES display surface +START_STRUCT(UnityDisplaySurfaceGLES, UnityDisplaySurfaceBase) +OBJC_OBJECT_PTR CAEAGLLayer * layer; +OBJC_OBJECT_PTR EAGLContext* context; + +// system FB +unsigned systemFB; +unsigned systemColorRB; + +// target resolution FB/target RT to blit from +unsigned targetFB; +unsigned targetColorRT; + +// MSAA FB +unsigned msaaFB; +unsigned msaaColorRB; + +// when we enable AA for non-native resolution we need interim RT to resolve AA to (and then we will blit it to screen) +UnityRenderBufferHandle resolvedColorBuffer; + +// will be "shared", only one depth buffer is needed +unsigned depthRB; + +// render surface gl setup: formats and AA +unsigned colorFormat; +unsigned depthFormat; +END_STRUCT(UnityDisplaySurfaceGLES) + +// Metal display surface +START_STRUCT(UnityDisplaySurfaceMTL, UnityDisplaySurfaceBase) +OBJC_OBJECT_PTR CAMetalLayer * layer; +OBJC_OBJECT_PTR MTLDeviceRef device; + +OBJC_OBJECT_PTR MTLCommandQueueRef commandQueue; +OBJC_OBJECT_PTR CAMetalDrawableRef drawable; + +OBJC_OBJECT_PTR MTLTextureRef systemColorRB; +OBJC_OBJECT_PTR MTLTextureRef targetColorRT; +OBJC_OBJECT_PTR MTLTextureRef targetAAColorRT; + +OBJC_OBJECT_PTR MTLTextureRef depthRB; +OBJC_OBJECT_PTR MTLTextureRef stencilRB; + +unsigned colorFormat; // [MTLPixelFormat] +unsigned depthFormat; // [MTLPixelFormat] +END_STRUCT(UnityDisplaySurfaceMTL) + +// START_STRUCT confuse clang c compiler (though it is idiomatic c code that works) +#pragma clang diagnostic pop + +// be aware that this enum is shared with unity implementation so you should absolutely not change it +typedef enum + UnityRenderingAPI +{ + apiOpenGLES2 = 2, + apiOpenGLES3 = 3, + apiMetal = 4, +} +UnityRenderingAPI; + +#ifdef __cplusplus +extern "C" { +#endif +int UnitySelectedRenderingAPI(); +#ifdef __cplusplus +} // extern "C" +#endif + +// gles +#ifdef __cplusplus +extern "C" { +#endif + +void InitRenderingGLES(); + +void CreateSystemRenderingSurfaceGLES(UnityDisplaySurfaceGLES* surface); +void DestroySystemRenderingSurfaceGLES(UnityDisplaySurfaceGLES* surface); +void CreateRenderingSurfaceGLES(UnityDisplaySurfaceGLES* surface); +void DestroyRenderingSurfaceGLES(UnityDisplaySurfaceGLES* surface); +void CreateSharedDepthbufferGLES(UnityDisplaySurfaceGLES* surface); +void DestroySharedDepthbufferGLES(UnityDisplaySurfaceGLES* surface); +void CreateUnityRenderBuffersGLES(UnityDisplaySurfaceGLES* surface); +void DestroyUnityRenderBuffersGLES(UnityDisplaySurfaceGLES* surface); +void StartFrameRenderingGLES(UnityDisplaySurfaceGLES* surface); +void EndFrameRenderingGLES(UnityDisplaySurfaceGLES* surface); +void PreparePresentGLES(UnityDisplaySurfaceGLES* surface); +void PresentGLES(UnityDisplaySurfaceGLES* surface); + +#ifdef __cplusplus +} // extern "C" +#endif + +// metal +#ifdef __cplusplus +extern "C" { +#endif + +void InitRenderingMTL(); + +void CreateSystemRenderingSurfaceMTL(UnityDisplaySurfaceMTL* surface); +void DestroySystemRenderingSurfaceMTL(UnityDisplaySurfaceMTL* surface); +void CreateRenderingSurfaceMTL(UnityDisplaySurfaceMTL* surface); +void DestroyRenderingSurfaceMTL(UnityDisplaySurfaceMTL* surface); +void CreateSharedDepthbufferMTL(UnityDisplaySurfaceMTL* surface); +void DestroySharedDepthbufferMTL(UnityDisplaySurfaceMTL* surface); +void CreateUnityRenderBuffersMTL(UnityDisplaySurfaceMTL* surface); +void DestroyUnityRenderBuffersMTL(UnityDisplaySurfaceMTL* surface); +void StartFrameRenderingMTL(UnityDisplaySurfaceMTL* surface); +void EndFrameRenderingMTL(UnityDisplaySurfaceMTL* surface); +void PreparePresentMTL(UnityDisplaySurfaceMTL* surface); +void PresentMTL(UnityDisplaySurfaceMTL* surface); + +#ifdef __cplusplus +} // extern "C" +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +// for Create* functions if surf is null we will actuially create new one, otherwise we update the one provided +// gles: one and only one of texid/rbid should be non-zero +// metal: resolveTex should be non-nil only if tex have AA +UnityRenderBufferHandle UnityCreateExternalSurfaceGLES(UnityRenderBufferHandle surf, int isColor, unsigned texid, unsigned rbid, unsigned glesFormat, const UnityRenderBufferDesc* desc); +UnityRenderBufferHandle UnityCreateExternalSurfaceMTL(UnityRenderBufferHandle surf, int isColor, MTLTextureRef tex, const UnityRenderBufferDesc* desc); +UnityRenderBufferHandle UnityCreateExternalColorSurfaceMTL(UnityRenderBufferHandle surf, MTLTextureRef tex, MTLTextureRef resolveTex, const UnityRenderBufferDesc* desc); +UnityRenderBufferHandle UnityCreateExternalDepthSurfaceMTL(UnityRenderBufferHandle surf, MTLTextureRef tex, MTLTextureRef stencilTex, const UnityRenderBufferDesc* desc); +// creates "dummy" surface - will indicate "missing" buffer (e.g. depth-only RT will have color as dummy) +UnityRenderBufferHandle UnityCreateDummySurface(UnityRenderBufferHandle surf, int isColor, const UnityRenderBufferDesc* desc); + +// disable rendering to render buffers (all Cameras that were rendering to one of buffers would be reset to use backbuffer) +void UnityDisableRenderBuffers(UnityRenderBufferHandle color, UnityRenderBufferHandle depth); +// destroys render buffer +void UnityDestroyExternalSurface(UnityRenderBufferHandle surf); +// sets current render target +void UnitySetRenderTarget(UnityRenderBufferHandle color, UnityRenderBufferHandle depth); +// final blit to backbuffer +void UnityBlitToBackbuffer(UnityRenderBufferHandle srcColor, UnityRenderBufferHandle dstColor, UnityRenderBufferHandle dstDepth); +// get native renderbuffer from handle +UnityRenderBufferHandle UnityNativeRenderBufferFromHandle(void *rb); + +MTLCommandBufferRef UnityCurrentMTLCommandBuffer(); + +// sets vSync on OSX 10.13 and up +#if PLATFORM_OSX +void MetalUpdateDisplaySync(); +#endif + +#ifdef __cplusplus +} // extern "C" +#endif + +// metal/gles unification + +#define GLES_METAL_COMMON_IMPL_SURF(f) \ +inline void f(UnityDisplaySurfaceBase* surface) \ +{ \ + if(surface->api == apiMetal) f ## MTL((UnityDisplaySurfaceMTL*)surface); \ + else f ## GLES((UnityDisplaySurfaceGLES*)surface);\ +} \ + +#define GLES_METAL_COMMON_IMPL(f) \ +inline void f() \ +{ \ + if(UnitySelectedRenderingAPI() == apiMetal) f ## MTL(); \ + else f ## GLES();\ +} \ + + +GLES_METAL_COMMON_IMPL(InitRendering); + +GLES_METAL_COMMON_IMPL_SURF(CreateSystemRenderingSurface); +GLES_METAL_COMMON_IMPL_SURF(DestroySystemRenderingSurface); +GLES_METAL_COMMON_IMPL_SURF(CreateRenderingSurface); +GLES_METAL_COMMON_IMPL_SURF(DestroyRenderingSurface); +GLES_METAL_COMMON_IMPL_SURF(CreateSharedDepthbuffer); +GLES_METAL_COMMON_IMPL_SURF(DestroySharedDepthbuffer); +GLES_METAL_COMMON_IMPL_SURF(CreateUnityRenderBuffers); +GLES_METAL_COMMON_IMPL_SURF(DestroyUnityRenderBuffers); +GLES_METAL_COMMON_IMPL_SURF(StartFrameRendering); +GLES_METAL_COMMON_IMPL_SURF(EndFrameRendering); +GLES_METAL_COMMON_IMPL_SURF(PreparePresent); +GLES_METAL_COMMON_IMPL_SURF(Present); + +#undef GLES_METAL_COMMON_IMPL_SURF +#undef GLES_METAL_COMMON_IMPL diff --git a/frameworks/ElvaChatServiceSDK.framework/Info.plist b/frameworks/ElvaChatServiceSDK.framework/Info.plist index 30532cc..57382d6 100755 --- a/frameworks/ElvaChatServiceSDK.framework/Info.plist +++ b/frameworks/ElvaChatServiceSDK.framework/Info.plist Binary files differ diff --git a/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeDirectory b/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeDirectory index ee76d40..7ed9090 100755 --- a/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeDirectory +++ b/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeDirectory Binary files differ diff --git a/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeRequirements-1 b/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeRequirements-1 index bbb61a8..ef63297 100755 --- a/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeRequirements-1 +++ b/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeRequirements-1 Binary files differ diff --git a/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeResources b/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeResources index 3a133b6..0b764ff 100755 --- a/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeResources +++ b/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeResources @@ -6,15 +6,27 @@ <dict> <key>Headers/ECServiceSdk.h</key> <data> - +czpHCKr0RyN3ZZ46mtvHeSIOD4= + R7uVHQdO3BB2h54BiyZU7f45TXE= </data> <key>Headers/ElvaChatServiceSDK.h</key> <data> zvjJNXUq1tMPygHWKxbHcw+t/to= </data> + <key>Headers/UnityForwardDecls.h</key> + <data> + EoGij/5BmK7cWWbj+ECBEyHcipw= + </data> + <key>Headers/UnityInterface.h</key> + <data> + P/sjx4YTcqreb+VGlwJdSXt3mew= + </data> + <key>Headers/UnityRendering.h</key> + <data> + tpS6Ojd+1vYtSX3a9iHqKBisk70= + </data> <key>Info.plist</key> <data> - 3mH5tyPn2toa9mnARefTzdvyHQY= + aPsZodAxj3+lEfZDw7gcQlZ9RzY= </data> <key>Modules/module.modulemap</key> <data> @@ -27,11 +39,11 @@ <dict> <key>hash</key> <data> - +czpHCKr0RyN3ZZ46mtvHeSIOD4= + R7uVHQdO3BB2h54BiyZU7f45TXE= </data> <key>hash2</key> <data> - saI0SnEo/pnmeOVrQSZun3u7n87KjNwuJ/CPvUX4t6g= + 0KWDBFl6RcB7XrS9PcZavOPm8G/WIh71auQmj5qgQQg= </data> </dict> <key>Headers/ElvaChatServiceSDK.h</key> @@ -45,6 +57,39 @@ E5u6tslHRsk1y/hRCzNYA+Y7hUk9TOeyzXU8+CH94kM= </data> </dict> + <key>Headers/UnityForwardDecls.h</key> + <dict> + <key>hash</key> + <data> + EoGij/5BmK7cWWbj+ECBEyHcipw= + </data> + <key>hash2</key> + <data> + qGe/u1NQdJ0ozw4DJssg4Hf7XQAr3Nhq38AtL5lBFCc= + </data> + </dict> + <key>Headers/UnityInterface.h</key> + <dict> + <key>hash</key> + <data> + P/sjx4YTcqreb+VGlwJdSXt3mew= + </data> + <key>hash2</key> + <data> + 1YyuYhkj1P+cTNpiFzPHUDv5xbwuaaoRor5YNa5ch4w= + </data> + </dict> + <key>Headers/UnityRendering.h</key> + <dict> + <key>hash</key> + <data> + tpS6Ojd+1vYtSX3a9iHqKBisk70= + </data> + <key>hash2</key> + <data> + 2za8ddck31K1kpTAgJkI63QlousiGlaiXPRV/mtdEYw= + </data> + </dict> <key>Modules/module.modulemap</key> <dict> <key>hash</key> diff --git a/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeSignature b/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeSignature index 0255f48..78cb55b 100755 --- a/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeSignature +++ b/frameworks/ElvaChatServiceSDK.framework/_CodeSignature/CodeSignature Binary files differ diff --git a/frameworks/WAAIhelpImpl.framework/Headers/WAAIhelpImpl.h b/frameworks/WAAIhelpImpl.framework/Headers/WAAIhelpImpl.h index dceae9a..a79733d 100644 --- a/frameworks/WAAIhelpImpl.framework/Headers/WAAIhelpImpl.h +++ b/frameworks/WAAIhelpImpl.framework/Headers/WAAIhelpImpl.h @@ -16,4 +16,4 @@ // In this header, you should import all the public headers of your framework using statements like #import <WAAIhelpImpl/PublicHeader.h> -//time:2018/8/27 14:57 ver:3.7.0 +//time:2019/01/15 12:30 ver:3.8.0 diff --git a/frameworks/WAAIhelpImpl.framework/Info.plist b/frameworks/WAAIhelpImpl.framework/Info.plist index b9819f2..22676cf 100644 --- a/frameworks/WAAIhelpImpl.framework/Info.plist +++ b/frameworks/WAAIhelpImpl.framework/Info.plist Binary files differ diff --git a/frameworks/WAAIhelpImpl.framework/WAAIhelpImpl b/frameworks/WAAIhelpImpl.framework/WAAIhelpImpl index a51d08a..e43ab9e 100644 --- a/frameworks/WAAIhelpImpl.framework/WAAIhelpImpl +++ b/frameworks/WAAIhelpImpl.framework/WAAIhelpImpl Binary files differ diff --git a/res/ElvaChatServiceSDK.bundle/ab_reward.png b/res/ElvaChatServiceSDK.bundle/ab_reward.png new file mode 100755 index 0000000..b0524cc --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/ab_reward.png Binary files differ diff --git a/res/ElvaChatServiceSDK.bundle/ar.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/ar.lproj/Localizable.strings index 3e516cc..a627a51 100755 --- a/res/ElvaChatServiceSDK.bundle/ar.lproj/Localizable.strings +++ b/res/ElvaChatServiceSDK.bundle/ar.lproj/Localizable.strings @@ -1,23 +1,18 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; -"ContactCustomerService" = "اتصل بنا"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="هل وجدت هذا مُفيداً."; -"elva__mark_no"="لا"; -"elva__mark_unhelpful_toast"="أنت لم تجد هذا مُفيداً."; -"elva__mark_yes"="أجل"; -"elva__mark_yes_no_question"="هل كان هذا مُفيداً؟"; -"content_too_long"="No more than %ld chars!"; +//阿拉伯语ar +"content_too_long"="لا تستخدم أكثر من %ld رمزا"; +"ContactCustomerService" = "اِتصل بنا"; +"self_service_interface" = "خدمة ذاتية"; +"offLine"= "لقد انفصلت الشبكة. يرجى المحاولة مجددا لاحقا"; "CustomerService"="HELP"; +"elva__mark_helpful_toast"="تم تأكيد السؤال مُفيدا"; +"elva__mark_unhelpful_toast"="تم تعيين السؤال غير مفيد"; +"elva__mark_yes_no_question"="هل كان هذا مفيدا؟"; +"elva__mark_no"="لا"; +"elva__mark_yes"="نعم"; +"RewardBalance"="رموزك"; +"GoTo" = "اتجه الى"; +"Forum" = "منتدى الأسئلة و الإجابات"; +"RewardSuccess" = "نجاج"; +"RewardFailure" = "فشل"; +"TokenInsufficient" = "الرموز الخاصة بك غير كافية"; +"NeedMoreHelp" = "هل تريد المزيد من المساعدة؟"; diff --git a/res/ElvaChatServiceSDK.bundle/checkbox_checked.png b/res/ElvaChatServiceSDK.bundle/checkbox_checked.png new file mode 100755 index 0000000..9bbea3d --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/checkbox_checked.png Binary files differ diff --git a/res/ElvaChatServiceSDK.bundle/checkbox_unchecked.png b/res/ElvaChatServiceSDK.bundle/checkbox_unchecked.png new file mode 100755 index 0000000..331c089 --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/checkbox_unchecked.png Binary files differ diff --git a/res/ElvaChatServiceSDK.bundle/de.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/de.lproj/Localizable.strings new file mode 100755 index 0000000..cbd1a0b --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/de.lproj/Localizable.strings @@ -0,0 +1,24 @@ +//德语de,de-AT,de-CH,de-DE,de-LI,de-LU +"content_too_long"="Nicht mehr al%ld Zeichen!"; +"ContactCustomerService" = "Kontaktieren uns"; +"self_service_interface" = "Selbst-Service"; +"offLine"= "Ihr Netzwerk ist getrennt, bitte versuchen Sie es später noch einmal"; +"CustomerService"="HELP"; +"elva__mark_helpful_toast"="Sie fanden es hilfreich."; +"elva__mark_unhelpful_toast"="Sie finden es nicht hilfreich."; +"elva__mark_yes_no_question"="Hilft das?"; +"elva__mark_no"="Nein"; +"elva__mark_yes"="Ja"; +"RewardBalance"="Ihre Tokens:"; +"GoTo" = "Gehen in die"; +"Forum" = "Gemeinschaft der Fragen und Antworten"; +"RewardSuccess" = "Erfolg"; +"RewardFailure" = "Fehlgeschlagen"; +"TokenInsufficient" = "Tokens reichen nicht aus"; +"NeedMoreHelp" = "Benötigen weitere Hilfe?"; + + + + + + diff --git a/res/ElvaChatServiceSDK.bundle/el-GR.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/el-GR.lproj/Localizable.strings new file mode 100755 index 0000000..72a9d2d --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/el-GR.lproj/Localizable.strings @@ -0,0 +1,32 @@ +//希腊语el-GR,el-CY +"content_too_long"="Δεν μπορείτε να ξεπεράσετε τους %ld χαρακτήρες!"; +"ContactCustomerService" = "Επικοινωνήστε μας"; +"self_service_interface" = "Σελφ σέρβις"; +"offLine"= "Το δίκτυό σας αποσυνδέθηκε, παρακαλώ προσπαθήστε αργότερα!"; +"CustomerService"="HELP"; +"elva__mark_helpful_toast"="Σας βοήθησε"; +"elva__mark_unhelpful_toast"="Δεν σας βοήθησε"; +"elva__mark_yes_no_question"="Σας βοήθησε;"; +"elva__mark_no"="Όχι"; +"elva__mark_yes"="Ναι"; +"RewardBalance"="Το υπόλοιπο των πόντων σας:"; +"GoTo" = "Μέχρι"; +"Forum" = "Φόρουμ ερωτήσεων και απαντήσεων"; +"RewardSuccess" = "Επιτυχής ανταμοιβή"; +"RewardFailure" = "Αποτυχής ανταμοιβή"; +"TokenInsufficient" = "Το υπόλοιπό σας δεν επαρκεί"; +"NeedMoreHelp" = "Χρειάζεστε βοήθεια?"; + + + + + + + + + + + + + + diff --git a/res/ElvaChatServiceSDK.bundle/en.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/en.lproj/Localizable.strings index 619512d..72509ac 100755 --- a/res/ElvaChatServiceSDK.bundle/en.lproj/Localizable.strings +++ b/res/ElvaChatServiceSDK.bundle/en.lproj/Localizable.strings @@ -1,23 +1,18 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; -"ContactCustomerService" = "Contact Us"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="You find this helpful"; -"elva__mark_no"="NO"; -"elva__mark_unhelpful_toast"="You didn't find this helpful"; -"elva__mark_yes"="YES"; -"elva__mark_yes_no_question"="Was this helpful?"; +//英语en "content_too_long"="No more than %ld chars!"; +"ContactCustomerService" = "Contact Us"; +"self_service_interface" = "Self-Service"; +"offLine"= "Your network is disconnected,please try again later"; "CustomerService"="HELP"; +"elva__mark_helpful_toast"="You found this helpful"; +"elva__mark_unhelpful_toast"="You didn't find this helpful"; +"elva__mark_yes_no_question"="Was this helpful?"; +"elva__mark_no"="NO"; +"elva__mark_yes"="YES"; +"RewardBalance"="Your tokens:"; +"GoTo" = "Go to the"; +"Forum" = "QA Forum"; +"RewardSuccess" = "Success"; +"RewardFailure" = "Failed"; +"TokenInsufficient" = "Your tokens is insufficient"; +"NeedMoreHelp" = "Need more help?"; diff --git a/res/ElvaChatServiceSDK.bundle/es.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/es.lproj/Localizable.strings index f6cddd0..b6dce23 100755 --- a/res/ElvaChatServiceSDK.bundle/es.lproj/Localizable.strings +++ b/res/ElvaChatServiceSDK.bundle/es.lproj/Localizable.strings @@ -1,23 +1,18 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; +//西班牙语es +"content_too_long"="No más de %ld caracteres!"; "ContactCustomerService" = "CONTÁCTANOS"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="Le resultó útil"; -"elva__mark_no"="NO"; -"elva__mark_unhelpful_toast"="No le resultó útil"; -"elva__mark_yes"="Sí"; -"elva__mark_yes_no_question"="¿Sirvió de ayuda"; -"content_too_long"="No more than %ld chars!"; +"self_service_interface" = "Autoservicio"; +"offLine"= "Su red está desconectada, inténtelo de nuevo más tarde."; "CustomerService"="HELP"; +"elva__mark_helpful_toast"="Le resultó útil"; +"elva__mark_unhelpful_toast"="No le resultó útil"; +"elva__mark_yes_no_question"="¿Sirvió de ayuda"; +"elva__mark_no"="NO"; +"elva__mark_yes"="Sí"; +"RewardBalance"="Sus puntos:"; +"GoTo" = "Ir a"; +"Forum" = "Foro de QA"; +"RewardSuccess" = "Éxito"; +"RewardFailure" = "Ha fallado"; +"TokenInsufficient" = "Sus puntos son insuficientes"; +"NeedMoreHelp" = "Necesitas más ayuda?"; diff --git a/res/ElvaChatServiceSDK.bundle/fa.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/fa.lproj/Localizable.strings new file mode 100755 index 0000000..fbbcfc2 --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/fa.lproj/Localizable.strings @@ -0,0 +1,32 @@ +//法斯语fa,fa-IR +"content_too_long"="نباید از %ld حروف بیشتر باشد."; +"ContactCustomerService" = "با ما تماس بگیرید"; +"self_service_interface" = "پشتیبانی"; +"offLine"= "اینترنت شما قطع می باشد ، لطفا بعدا امتحان کنید."; +"CustomerService"="HELP"; +"elva__mark_helpful_toast"="این کمک مفیدی بود"; +"elva__mark_unhelpful_toast"="کمک مفیدی نبود"; +"elva__mark_yes_no_question"="آیا این مفید بود؟"; +"elva__mark_no"="نه"; +"elva__mark_yes"="بله"; +"RewardBalance"="امتیاز باقیمانده شما"; +"GoTo" = "برو به"; +"Forum" = "گروه پرسش و پاسخ"; +"RewardSuccess" = "موفقیت آمیز"; +"RewardFailure" = "ناموفق"; +"TokenInsufficient" = "امتیاز شما کافی نیست ."; +"NeedMoreHelp" = "نیاز به کمک بیشتری دارید؟"; + + + + + + + + + + + + + + diff --git a/res/ElvaChatServiceSDK.bundle/fr-FR.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/fr-FR.lproj/Localizable.strings new file mode 100755 index 0000000..a574754 --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/fr-FR.lproj/Localizable.strings @@ -0,0 +1,24 @@ +//法语fr,fr-FRfr-BE,fr-CA,fr-CH,fr-FR,fr-LU,fr-MC +"content_too_long"="Pas plus de %ld de caractères"; +"ContactCustomerService" = "Contactez-nous"; +"self_service_interface" = "Libre service"; +"offLine"= "Votre connexion ne fonctionne pas, veuillez essayer de nouveau"; +"CustomerService"="HELP"; +"elva__mark_helpful_toast"="Est ce que cela vous aidé"; +"elva__mark_unhelpful_toast"="Vous n'avez pas trouvez cela utile"; +"elva__mark_yes_no_question"="Est-ce que cela a été utile?"; +"elva__mark_no"="Non"; +"elva__mark_yes"="Oui"; +"RewardBalance"="Vos jetons"; +"GoTo" = "Allez à"; +"Forum" = "FAQ"; +"RewardSuccess" = "Succès"; +"RewardFailure" = "Echec"; +"TokenInsufficient" = "Jeton insuffisant"; +"NeedMoreHelp" = "Besoin d'aide?"; + + + + + + diff --git a/res/ElvaChatServiceSDK.bundle/id-ID.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/id-ID.lproj/Localizable.strings new file mode 100755 index 0000000..658b119 --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/id-ID.lproj/Localizable.strings @@ -0,0 +1,18 @@ +//印度尼西亚语id,id-ID +"content_too_long"="Tidak dapat melebihi %ld karakter!"; +"ContactCustomerService" = "Hubungi Kami"; +"self_service_interface" = "Self-Service"; +"offLine"= "Koneksi internet anda terputus, harap coba beberapa saat lagi"; +"CustomerService"="HELP"; +"elva__mark_helpful_toast"="Anda merasa terbantu"; +"elva__mark_unhelpful_toast"="Anda merasa tidak terbantu"; +"elva__mark_yes_no_question"="Apakah ini membantu?"; +"elva__mark_no"="TIDAK"; +"elva__mark_yes"="YA"; +"RewardBalance"="Token Anda:"; +"GoTo" = "Pergi ke"; +"Forum" = "Forum Q&A"; +"RewardSuccess" = "Berhasil"; +"RewardFailure" = "Gagal"; +"TokenInsufficient" = "Saldo token Anda tidak mencukupi"; +"NeedMoreHelp" = "butuh lebih bantuan?"; diff --git a/res/ElvaChatServiceSDK.bundle/it-IT.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/it-IT.lproj/Localizable.strings new file mode 100755 index 0000000..acc7931 --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/it-IT.lproj/Localizable.strings @@ -0,0 +1,32 @@ +//意大利语it,it-CH,it-IT +"content_too_long"="Non più di %ld caratteri!"; +"ContactCustomerService" = "Contattaci"; +"self_service_interface" = "Self Service"; +"offLine"= "Il tuo collegamento si è interrotto, si prega di effettuare nuovamente l'accesso!"; +"CustomerService"="HELP"; +"elva__mark_helpful_toast"="Lo hai trovato utile"; +"elva__mark_unhelpful_toast"="Lo hai trovato inutile"; +"elva__mark_yes_no_question"="Questo è utile?"; +"elva__mark_no"="No"; +"elva__mark_yes"="Si"; +"RewardBalance"="Il tuo bilancio punti:"; +"GoTo" = "Fino a"; +"Forum" = "Spazio domande"; +"RewardSuccess" = "Premiazione riuscita"; +"RewardFailure" = "Premiazione fallita"; +"TokenInsufficient" = "Bilancio insufficiente"; +"NeedMoreHelp" = "Serve ancora aiuto?"; + + + + + + + + + + + + + + diff --git a/res/ElvaChatServiceSDK.bundle/ja.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/ja.lproj/Localizable.strings index c1805dd..eb6e5e2 100755 --- a/res/ElvaChatServiceSDK.bundle/ja.lproj/Localizable.strings +++ b/res/ElvaChatServiceSDK.bundle/ja.lproj/Localizable.strings @@ -1,23 +1,18 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; +//日语ja +"content_too_long"="%ld文字を超えてはならない!"; "ContactCustomerService" = "お問い合わせ"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="役に立ちました"; -"elva__mark_no"="いいえ"; -"elva__mark_unhelpful_toast"="役に立たなかった"; -"elva__mark_yes"="はい"; -"elva__mark_yes_no_question"="お役に立ちましたか"; -"content_too_long"="No more than %ld chars!"; +"self_service_interface" = "セルフサービス"; +"offLine"= "ネットのアクセスがエラー発生しました、もう一度やり直してください!"; "CustomerService"="HELP"; +"elva__mark_helpful_toast"="役に立ったと評価されました"; +"elva__mark_unhelpful_toast"="役に立たなかったと評価されました"; +"elva__mark_yes_no_question"="お役に立ちましたか?"; +"elva__mark_no"="いいえ"; +"elva__mark_yes"="はい"; +"RewardBalance"="ポイント残高"; +"GoTo" = "に行く"; +"Forum" = "QAフォーム"; +"RewardSuccess" = "奨励成功"; +"RewardFailure" = "奨励失敗"; +"TokenInsufficient" = "残高が足りません"; +"NeedMoreHelp" = "他の質問もある?"; diff --git a/res/ElvaChatServiceSDK.bundle/ko.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/ko.lproj/Localizable.strings index 3468c93..a5cc241 100755 --- a/res/ElvaChatServiceSDK.bundle/ko.lproj/Localizable.strings +++ b/res/ElvaChatServiceSDK.bundle/ko.lproj/Localizable.strings @@ -1,23 +1,18 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; +//韩语ko +"content_too_long"="%ld 단어를 초과 할 수 없습니다!"; "ContactCustomerService" = "연락하기"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="도움이 되는 내용입니다"; -"elva__mark_no"="아니요"; -"elva__mark_unhelpful_toast"="도움이 안 되요"; -"elva__mark_yes"="예"; -"elva__mark_yes_no_question"="도움이 되는 내용인가요"; -"content_too_long"="No more than %ld chars!"; +"self_service_interface" = "셀프 서비스"; +"offLine"= "네트워크 연결이 끊어졌습니다. 나중에 다시 시도하십시오."; "CustomerService"="HELP"; +"elva__mark_helpful_toast"="질문이 도움이 되었다고 표시되었습니다"; +"elva__mark_unhelpful_toast"="질문이 도움이 되지 않았다고 표시되었습니다"; +"elva__mark_yes_no_question"="이 내용이 유용했나요?"; +"elva__mark_no"="아니요"; +"elva__mark_yes"="예"; +"RewardBalance"="포인트 잔고:"; +"GoTo" = "가기"; +"Forum" = "Q&A 커뮤니티"; +"RewardSuccess" = "성공"; +"RewardFailure" = "실패"; +"TokenInsufficient" = "토큰이 부족합니다."; +"NeedMoreHelp" = "도움이 더 필요하십니까?"; diff --git a/res/ElvaChatServiceSDK.bundle/pl-PL.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/pl-PL.lproj/Localizable.strings new file mode 100755 index 0000000..dd94a13 --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/pl-PL.lproj/Localizable.strings @@ -0,0 +1,32 @@ +//波兰语pl,pl-PL +"content_too_long"="Nie więcej niż %ld znaków!"; +"ContactCustomerService" = "Obsługa klienta"; +"self_service_interface" = "Samoobsługa"; +"offLine"= "Brak dostępu do sieci, proszę spróbuj ponownie później."; +"CustomerService"="HELP"; +"elva__mark_helpful_toast"="Uznałeś to za przydatne."; +"elva__mark_unhelpful_toast"="Nie uznałeś tego za przydatne."; +"elva__mark_yes_no_question"="Czy było to przydatne?"; +"elva__mark_no"="Nie"; +"elva__mark_yes"="Tak"; +"RewardBalance"="Twój bilans punktów:"; +"GoTo" = "Idź do"; +"Forum" = "Forum pytań i odpowiedzi."; +"RewardSuccess" = "Sukces."; +"RewardFailure" = "Porażka."; +"TokenInsufficient" = "Niewystarczająca ilość punktów."; +"NeedMoreHelp" = "Bisogno Di Più Aiuto?"; + + + + + + + + + + + + + + diff --git a/res/ElvaChatServiceSDK.bundle/pt-PT.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/pt-PT.lproj/Localizable.strings new file mode 100755 index 0000000..f90698c --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/pt-PT.lproj/Localizable.strings @@ -0,0 +1,24 @@ +//葡萄牙语pt,pt-BR,pt-PT +"content_too_long"="Não pode ser mais de %ld palavras!"; +"ContactCustomerService" = "Contate-Nos"; +"self_service_interface" = "Self-Service"; +"offLine"= "Sua conexão foi desconectada, entre novamente!"; +"CustomerService"="HELP"; +"elva__mark_helpful_toast"="Isso é útil"; +"elva__mark_unhelpful_toast"="Isso não é útil"; +"elva__mark_yes_no_question"="É útil?"; +"elva__mark_no"="Não"; +"elva__mark_yes"="Sim"; +"RewardBalance"="Seus saldos de ponto:"; +"GoTo" = "Chegar"; +"Forum" = "Comunidade de pergunta e resposta"; +"RewardSuccess" = "Recompense com sucesso"; +"RewardFailure" = "Recompense não com sucesso"; +"TokenInsufficient" = "Saldos insuficientes"; +"NeedMoreHelp" = "Precisa mais ajuda?"; + + + + + + diff --git a/res/ElvaChatServiceSDK.bundle/ru.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/ru.lproj/Localizable.strings index b74cae3..c336917 100755 --- a/res/ElvaChatServiceSDK.bundle/ru.lproj/Localizable.strings +++ b/res/ElvaChatServiceSDK.bundle/ru.lproj/Localizable.strings @@ -1,23 +1,18 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; -"ContactCustomerService" = "Связаться с Нами"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="Вы считаете это полезным"; -"elva__mark_no"="НЕТ"; -"elva__mark_unhelpful_toast"="Вам это не помогло"; -"elva__mark_yes"="ДА"; -"elva__mark_yes_no_question"="Это было полезно"; -"content_too_long"="No more than %ld chars!"; +//俄语ru +"content_too_long"="Не более %ld символов!"; +"ContactCustomerService" = "Свяжитесь с нами"; +"self_service_interface" = "Самообслуживание"; +"offLine"= "Вы не подключены к сети, повторите попытку позже"; "CustomerService"="HELP"; +"elva__mark_helpful_toast"="Вопрос был обозначен как Полезный"; +"elva__mark_unhelpful_toast"="Вопрос был обозначен как Бесполезный"; +"elva__mark_yes_no_question"="Это вам помогло?"; +"elva__mark_no"="НЕТ"; +"elva__mark_yes"="ДА"; +"RewardBalance"="Остаток баллов:"; +"GoTo" = "Перейти"; +"Forum" = "QA форум"; +"RewardSuccess" = "Успешно"; +"RewardFailure" = "Неудачно"; +"TokenInsufficient" = "Недостаточно баллов"; +"NeedMoreHelp" = "Нужна помощь?"; diff --git a/res/ElvaChatServiceSDK.bundle/sv-SE.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/sv-SE.lproj/Localizable.strings new file mode 100755 index 0000000..59dc1f8 --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/sv-SE.lproj/Localizable.strings @@ -0,0 +1,24 @@ +//瑞典语sv,sv-FI,sv-SE +"content_too_long"="Får inte vara längre än %ld tecken!"; +"ContactCustomerService" = "Kontakta KS"; +"self_service_interface" = "Självservice"; +"offLine"= "Anslutning bruten, försök igen!"; +"CustomerService"="HELP"; +"elva__mark_helpful_toast"="Fick du hjälp av detta?"; +"elva__mark_unhelpful_toast"="Fick du inte hjälp av detta?"; +"elva__mark_yes_no_question"="Fick du hjälp av detta?"; +"elva__mark_no"="Nej"; +"elva__mark_yes"="Ja"; +"RewardBalance"="Dina poäng:"; +"GoTo" = "Gå till"; +"Forum" = "Frågeforum"; +"RewardSuccess" = "Lyckades"; +"RewardFailure" = "Misslyckades"; +"TokenInsufficient" = "Du har inte tillräckligt med poäng"; +"NeedMoreHelp" = "Behöver mer hjälp?"; + + + + + + diff --git a/res/ElvaChatServiceSDK.bundle/th.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/th.lproj/Localizable.strings index afda17b..f49c196 100755 --- a/res/ElvaChatServiceSDK.bundle/th.lproj/Localizable.strings +++ b/res/ElvaChatServiceSDK.bundle/th.lproj/Localizable.strings @@ -1,23 +1,18 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; +//泰语th +"content_too_long"="ไม่เกิน %ld ตัวอักษร!"; "ContactCustomerService" = "ติดต่อเรา"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="มีประโยชน์สำหรับคุณ"; -"elva__mark_no"="ไม่ใช่"; -"elva__mark_unhelpful_toast"="ไม่มีประโยชน์สำหรับคุณ"; -"elva__mark_yes"="ใช่"; -"elva__mark_yes_no_question"="ข้อมูลดังกล่าวมีประโยชน์หรือไม่"; -"content_too_long"="No more than %ld chars!"; +"self_service_interface" = "Self-Service"; +"offLine"= "การเชื่อมต่อผิดพลาด กรุณาเข้าระบบอีกครั้ง!"; "CustomerService"="HELP"; +"elva__mark_helpful_toast"="คำถามนี้ถูกระบุว่ามีประโยชน์"; +"elva__mark_unhelpful_toast"="คำถามนี้ถูกระบุว่าไม่มีประโยชน์"; +"elva__mark_yes_no_question"="ข้อมูลดังกล่าวมีประโยชน์หรือไม่"; +"elva__mark_no"="ไม่ใช่"; +"elva__mark_yes"="ใช่"; +"RewardBalance"="แต้มของคุณเหลือ:"; +"GoTo" = "ถึง"; +"Forum" = "ถามตอบ"; +"RewardSuccess" = "ให้รางวัลสำเร็จ"; +"RewardFailure" = "ให้รางวัลล้มเหลว"; +"TokenInsufficient" = "จำนวนคงเหลือไม่พอ"; +"NeedMoreHelp" = "ต้องการความช่วยเหลือ?"; diff --git a/res/ElvaChatServiceSDK.bundle/tr.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/tr.lproj/Localizable.strings index 69d83a5..07c6bca 100755 --- a/res/ElvaChatServiceSDK.bundle/tr.lproj/Localizable.strings +++ b/res/ElvaChatServiceSDK.bundle/tr.lproj/Localizable.strings @@ -1,23 +1,18 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Bağlantı hatası, lütfen tekrar deneyin!"; +//土耳其语tr +"content_too_long"="En fazla %ld karakter kullanılabilir!"; "ContactCustomerService" = "İletişim"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Bunu faydalı buldunuz mu?"; -"NO"="Hayır"; -"YES"="Evet"; -"elva__mark_helpful_toast"="Bunu faydalı buldum!"; -"elva__mark_no"="Hayır"; -"elva__mark_unhelpful_toast"="Bunu faydalı bulmadım!"; -"elva__mark_yes"="Evet"; -"elva__mark_yes_no_question"="Bunu faydalı buldunuz mu?"; -"content_too_long"="Maks %ld karakter kullanılabilir!"; +"self_service_interface" = "Kendin Hallet"; +"offLine"= "Bağlantı hatası,lütfen tekrar deneyin!"; "CustomerService"="HELP"; +"elva__mark_helpful_toast"="Bunu faydalı buldum!"; +"elva__mark_unhelpful_toast"="Bunu faydalı bulmadım!"; +"elva__mark_yes_no_question"="Bunu faydalı buldunuz mu?"; +"elva__mark_no"="Hayır"; +"elva__mark_yes"="Evet"; +"RewardBalance"="Puanınız:"; +"GoTo" = "Git:"; +"Forum" = "Sıkça Sorulan Sorular"; +"RewardSuccess" = "Başarılı!"; +"RewardFailure" = "Başarısız!"; +"TokenInsufficient" = "Bakiyeniz yetersiz!"; +"NeedMoreHelp" = "Ihtiyacınız yardıma?"; diff --git a/res/ElvaChatServiceSDK.bundle/vi-VN.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/vi-VN.lproj/Localizable.strings new file mode 100755 index 0000000..6854988 --- /dev/null +++ b/res/ElvaChatServiceSDK.bundle/vi-VN.lproj/Localizable.strings @@ -0,0 +1,24 @@ +//越南语vi,vi-VN +"content_too_long"="Không vượt quá %ld ký tự!"; +"ContactCustomerService" = "Liên hệ CSKH"; +"self_service_interface" = "Dịch vụ tự động"; +"offLine"= "Đã mất kết nối, hãy vào lại!"; +"CustomerService"="HELP"; +"elva__mark_helpful_toast"="Phát hiện có hỗ trợ"; +"elva__mark_unhelpful_toast"="Phát hiện không có hỗ trợ"; +"elva__mark_yes_no_question"="Ở đây có hỗ trợ không?"; +"elva__mark_no"="Không"; +"elva__mark_yes"="Có"; +"RewardBalance"="Tích điểm còn:"; +"GoTo" = "Đến"; +"Forum" = "Cộng đồng hỏi đáp"; +"RewardSuccess" = "Thưởng thành công"; +"RewardFailure" = "Thưởng thất bại"; +"TokenInsufficient" = "Không còn đủ"; +"NeedMoreHelp" = "cần thêm giúp?"; + + + + + + diff --git a/res/ElvaChatServiceSDK.bundle/zh-Hans.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/zh-Hans.lproj/Localizable.strings index 8838004..eae8113 100755 --- a/res/ElvaChatServiceSDK.bundle/zh-Hans.lproj/Localizable.strings +++ b/res/ElvaChatServiceSDK.bundle/zh-Hans.lproj/Localizable.strings @@ -1,23 +1,18 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "聊天客服"; -"offLine"= "您的链接已经断开,请重新进入!"; -"ContactCustomerService" = "联系我们"; -"self_service_interface" = "自助服务"; -"Message" = "信息"; -"WasHelp"="此信息对您有帮助吗?"; -"NO"="否"; -"YES"="是"; -"elva__mark_helpful_toast"="你发现这有帮助"; -"elva__mark_no"="否"; -"elva__mark_unhelpful_toast"="你发现这无帮助"; -"elva__mark_yes"="是"; -"elva__mark_yes_no_question"="这有帮助吗"; +//中文简体zh-Hans "content_too_long"="不能超过%ld个字!"; +"ContactCustomerService" = "联系客服"; +"self_service_interface" = "自助服务"; +"offLine"= "您的链接已经断开,请重新进入!"; "CustomerService"="HELP"; +"elva__mark_helpful_toast"="你发现这有帮助"; +"elva__mark_unhelpful_toast"="你发现这无帮助"; +"elva__mark_yes_no_question"="这有帮助吗"; +"elva__mark_no"="否"; +"elva__mark_yes"="是"; +"RewardBalance"="您的积分余额:"; +"GoTo" = "到"; +"Forum" = "问答社区"; +"RewardSuccess" = "打赏成功"; +"RewardFailure" = "打赏失败"; +"TokenInsufficient" = "余额不足"; +"NeedMoreHelp" = "需要更多帮助?"; diff --git a/res/ElvaChatServiceSDK.bundle/zh-Hant.lproj/Localizable.strings b/res/ElvaChatServiceSDK.bundle/zh-Hant.lproj/Localizable.strings index 79ab746..7724fdc 100755 --- a/res/ElvaChatServiceSDK.bundle/zh-Hant.lproj/Localizable.strings +++ b/res/ElvaChatServiceSDK.bundle/zh-Hant.lproj/Localizable.strings @@ -1,26 +1,18 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. - */ - -"ElvaChatService" = "聊天客服"; - -"offLine"= "您的鏈接已經斷開,請重新進入!"; - -"ContactCustomerService" = "聯系我們"; -"self_service_interface" = "自助服務"; - -"Message" = "信息"; -"WasHelp"="此信息對您有幫助嗎?"; -"NO"="否"; -"YES"="是"; -"elva__mark_helpful_toast"="妳發現這有幫助"; -"elva__mark_no"="否"; -"elva__mark_unhelpful_toast"="妳發現這無幫助"; -"elva__mark_yes"="是"; -"elva__mark_yes_no_question"="這有幫助嗎"; +//中文繁体zh-Hant "content_too_long"="不能超過%ld個字!"; +"ContactCustomerService" = "聯系客服"; +"self_service_interface" = "自助服務"; +"offLine"= "您的連結已經斷開,請重新進入!"; "CustomerService"="HELP"; +"elva__mark_helpful_toast"="妳發現這有幫助"; +"elva__mark_unhelpful_toast"="妳發現這無幫助"; +"elva__mark_yes_no_question"="這有幫助嗎?"; +"elva__mark_no"="否"; +"elva__mark_yes"="是"; +"RewardBalance"="您的積分餘額:"; +"GoTo" = "到"; +"Forum" = "問答社區"; +"RewardSuccess" = "打賞成功"; +"RewardFailure" = "打賞失敗"; +"TokenInsufficient" = "餘額不足"; +"NeedMoreHelp" = "需要更多幫助?"; diff --git a/res/Localization/ar.lproj/Localizable.strings b/res/Localization/ar.lproj/Localizable.strings deleted file mode 100755 index c8be713..0000000 --- a/res/Localization/ar.lproj/Localizable.strings +++ /dev/null @@ -1,22 +0,0 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; -"ContactCustomerService" = "اِتصل بنا"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="هل وجدت هذا مُفيداً."; -"elva__mark_no"="لا"; -"elva__mark_unhelpful_toast"="أنت لم تجد هذا مُفيداً."; -"elva__mark_yes"="أجل"; -"elva__mark_yes_no_question"="هل كان هذا مُفيداً؟"; -"content_too_long"="No more than %ld chars!"; diff --git a/res/Localization/en.lproj/Localizable.strings b/res/Localization/en.lproj/Localizable.strings deleted file mode 100755 index c9ffed4..0000000 --- a/res/Localization/en.lproj/Localizable.strings +++ /dev/null @@ -1,22 +0,0 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; -"ContactCustomerService" = "Contact Us"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="You find this helpful"; -"elva__mark_no"="NO"; -"elva__mark_unhelpful_toast"="You didn't find this helpful"; -"elva__mark_yes"="YES"; -"elva__mark_yes_no_question"="Was this helpful?"; -"content_too_long"="No more than %ld chars!"; diff --git a/res/Localization/es.lproj/Localizable.strings b/res/Localization/es.lproj/Localizable.strings deleted file mode 100755 index 1758951..0000000 --- a/res/Localization/es.lproj/Localizable.strings +++ /dev/null @@ -1,22 +0,0 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; -"ContactCustomerService" = "CONTÁCTANOS"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="Le resultó útil"; -"elva__mark_no"="NO"; -"elva__mark_unhelpful_toast"="No le resultó útil"; -"elva__mark_yes"="Sí"; -"elva__mark_yes_no_question"="¿Sirvió de ayuda"; -"content_too_long"="No more than %ld chars!"; diff --git a/res/Localization/ja.lproj/Localizable.strings b/res/Localization/ja.lproj/Localizable.strings deleted file mode 100755 index 4729ad2..0000000 --- a/res/Localization/ja.lproj/Localizable.strings +++ /dev/null @@ -1,22 +0,0 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; -"ContactCustomerService" = "お問い合わせ"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="役に立ちました"; -"elva__mark_no"="いいえ"; -"elva__mark_unhelpful_toast"="役に立たなかった"; -"elva__mark_yes"="はい"; -"elva__mark_yes_no_question"="お役に立ちましたか"; -"content_too_long"="No more than %ld chars!"; diff --git a/res/Localization/ko.lproj/Localizable.strings b/res/Localization/ko.lproj/Localizable.strings deleted file mode 100755 index ca46a53..0000000 --- a/res/Localization/ko.lproj/Localizable.strings +++ /dev/null @@ -1,22 +0,0 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; -"ContactCustomerService" = "연락하기"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="도움이 되는 내용입니다"; -"elva__mark_no"="아니요"; -"elva__mark_unhelpful_toast"="도움이 안 되요"; -"elva__mark_yes"="예"; -"elva__mark_yes_no_question"="도움이 되는 내용인가요"; -"content_too_long"="No more than %ld chars!"; diff --git a/res/Localization/ru.lproj/Localizable.strings b/res/Localization/ru.lproj/Localizable.strings deleted file mode 100755 index 0f911b2..0000000 --- a/res/Localization/ru.lproj/Localizable.strings +++ /dev/null @@ -1,22 +0,0 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; -"ContactCustomerService" = "Связаться с Нами"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="Вы считаете это полезным"; -"elva__mark_no"="НЕТ"; -"elva__mark_unhelpful_toast"="Вам это не помогло"; -"elva__mark_yes"="ДА"; -"elva__mark_yes_no_question"="Это было полезно"; -"content_too_long"="No more than %ld chars!"; diff --git a/res/Localization/th.lproj/Localizable.strings b/res/Localization/th.lproj/Localizable.strings deleted file mode 100755 index dbfbfab..0000000 --- a/res/Localization/th.lproj/Localizable.strings +++ /dev/null @@ -1,22 +0,0 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "ElvaChat Service"; -"offLine"="Your network is disconnected,please try again later"; -"ContactCustomerService" = "ติดต่อเรา"; -"self_service_interface"="services"; -"Message" = "Message"; -"WasHelp"="Was this helpful?"; -"NO"="NO"; -"YES"="YES"; -"elva__mark_helpful_toast"="มีประโยชน์สำหรับคุณ"; -"elva__mark_no"="ไม่ใช่"; -"elva__mark_unhelpful_toast"="ไม่มีประโยชน์สำหรับคุณ"; -"elva__mark_yes"="ใช่"; -"elva__mark_yes_no_question"="ข้อมูลดังกล่าวมีประโยชน์หรือไม่"; -"content_too_long"="No more than %ld chars!"; diff --git a/res/Localization/zh-Hans.lproj/Localizable.strings b/res/Localization/zh-Hans.lproj/Localizable.strings deleted file mode 100755 index a0325a0..0000000 --- a/res/Localization/zh-Hans.lproj/Localizable.strings +++ /dev/null @@ -1,22 +0,0 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. -*/ - -"ElvaChatService" = "聊天客服"; -"offLine"= "您的链接已经断开,请重新进入!"; -"ContactCustomerService" = "联系我们"; -"self_service_interface" = "自助服务"; -"Message" = "信息"; -"WasHelp"="此信息对您有帮助吗?"; -"NO"="否"; -"YES"="是"; -"elva__mark_helpful_toast"="你发现这有帮助"; -"elva__mark_no"="否"; -"elva__mark_unhelpful_toast"="你发现这无帮助"; -"elva__mark_yes"="是"; -"elva__mark_yes_no_question"="这有帮助吗"; -"content_too_long"="不能超过%ld个字!"; diff --git a/res/Localization/zh-Hant.lproj/Localizable.strings b/res/Localization/zh-Hant.lproj/Localizable.strings deleted file mode 100755 index 71b6b04..0000000 --- a/res/Localization/zh-Hant.lproj/Localizable.strings +++ /dev/null @@ -1,25 +0,0 @@ -/* - Localizable.strings - ElvaTestIOS - - Created by wwj on 16/5/30. - Copyright © 2016年 im30. All rights reserved. - */ - -"ElvaChatService" = "聊天客服"; - -"offLine"= "您的鏈接已經斷開,請重新進入!"; - -"ContactCustomerService" = "聯系我們"; -"self_service_interface" = "自助服務"; - -"Message" = "信息"; -"WasHelp"="此信息對您有幫助嗎?"; -"NO"="否"; -"YES"="是"; -"elva__mark_helpful_toast"="妳發現這有幫助"; -"elva__mark_no"="否"; -"elva__mark_unhelpful_toast"="妳發現這無幫助"; -"elva__mark_yes"="是"; -"elva__mark_yes_no_question"="這有幫助嗎"; -"content_too_long"="不能超過%ld個字!"; -- Gitblit v1.8.0