mirror of
https://github.com/Tencent/Hippy.git
synced 2026-10-19 05:51:35 +08:00
d9576d4819
* refactor(ios): Revert rename Hippy prefix part3 * refactor(ios): Revert rename from Hippy prefix to NativeRender part1 the original rename pr is #2165 * refactor(ios): Revert rename from Hippy prefix to NativeRender part2 * refactor(ios): Revert rename Hippy prefix part4 * refactor(ios): Revert rename Hippy prefix part5 * refactor(ios): Revert rename Hippy prefix part 6 * refactor(ios): Revert rename Hippy prefix part 7 * refactor(ios): make hippy3 native component compatible with hippy2 * refactor(ios): Revert rename Hippy prefix part 8 * refactor(ios): Revert rename Hippy prefix part 9 * refactor(ios): Revert rename Hippy prefix part 10 * refactor(ios): Revert rename Hippy prefix to NativeRender part 11 * refactor(ios): Revert rename and sdk frame refactor part 12 * refactor(ios): Revert rename and sdk frame refactor part 13 HippyRootView and sdk start related change * feat(ios): Improve method of getting UI state and Add NightMode sync from hippy2 * fix(ios): bridge and rootView's memory issue when dealloc * refactor(ios): Revert rename and sdk frame refactor part 14 * fix(ios): listview and waterfall reload animation bug * fix(ios): fix hippy3 podspec's bug remove all deprecated Header Search Path settings in user_target_xcconfig
91 lines
3.0 KiB
Objective-C
91 lines
3.0 KiB
Objective-C
/*!
|
|
* iOS SDK
|
|
*
|
|
* Tencent is pleased to support the open source community by making
|
|
* Hippy available.
|
|
*
|
|
* Copyright (C) 2019 THL A29 Limited, a Tencent company.
|
|
* All rights reserved.
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
#import "HippyBridgeModule.h"
|
|
#import "HippyInvalidating.h"
|
|
|
|
/**
|
|
* A simple, asynchronous, persistent, key-value storage system designed as a
|
|
* backend to the AsyncStorage JS module, which is modeled after LocalStorage.
|
|
*
|
|
* Current implementation stores small values in serialized dictionary and
|
|
* larger values in separate files. Since we use a serial file queue
|
|
* `RKFileQueue`, reading/writing from multiple threads should be perceived as
|
|
* being atomic, unless someone bypasses the `HippyAsyncLocalStorage` API.
|
|
*
|
|
* Keys and values must always be strings or an error is returned.
|
|
*/
|
|
extern NSString *const HippyStorageDirectory;
|
|
|
|
extern NSUInteger HPLOCALSTORAGEIOTYPEREAD;
|
|
|
|
extern NSUInteger HPLOCALSTORAGEIOTYPEWRITE;
|
|
|
|
@interface HippyAsyncLocalStorage : NSObject <HippyBridgeModule, HippyInvalidating>
|
|
|
|
@property (nonatomic, assign) BOOL clearOnInvalidate;
|
|
|
|
@property (nonatomic, readonly, getter=isValid) BOOL valid;
|
|
|
|
/**
|
|
* Clear the HippyAsyncLocalStorage data from native code
|
|
*/
|
|
+ (void)clearAllData;
|
|
|
|
/**
|
|
* Get storage directory for HippyAsyncLocalStorage
|
|
* overwrite this function to return your customized directory
|
|
*
|
|
*@discussion default storage directory is #{your app sand box}/document/HippyAsyncLocalStorage_V1/#{module name}
|
|
* @return storage directory for HippyAsyncLocalStorage
|
|
*/
|
|
- (NSString *)HippyGetStorageDirectory;
|
|
|
|
/**
|
|
* Get maxium data read limit
|
|
*
|
|
* @discussion if data size exceed range, *handleDataSizeExceed* method will be invoked.Default is NSUIntegerMax
|
|
* @return max read data size
|
|
*/
|
|
- (NSUInteger)maxReadDataSize;
|
|
|
|
/**
|
|
* Get maxium data write limit
|
|
*
|
|
* @discussion if data size exceed range, *handleDataSizeExceed* method will be invoked.Default is NSUIntegerMax
|
|
* @return max write data size
|
|
*/
|
|
- (NSUInteger)maxWriteDataSize;
|
|
|
|
/**
|
|
* handle data size exceed range event
|
|
*
|
|
* @discussion default return YES and does nothing
|
|
* @param IOType HPLOCALSTORAGEIOTYPEREAD or HPLOCALSTORAGEIOTYPEWRITE action
|
|
* @param moduleName module which triggered this operation
|
|
* @param length The amount of data that corresponds to this operation
|
|
* @return Continue read or write if return YES
|
|
*/
|
|
- (BOOL)handleDataSizeExceedForIOType:(NSUInteger)IOType moduleName:(NSString *)moduleName key:(NSString *)key dataLength:(NSUInteger)length;
|
|
|
|
@end
|