feat: add DoricDevAssetsLoader in dev mode
This commit is contained in:
parent
1ba4336857
commit
7b44801b17
@ -70,6 +70,8 @@ public class DoricDev {
|
|||||||
DoricSingleton.getInstance().getNativeDriver().getRegistry().registerMonitor(new DoricDevMonitor());
|
DoricSingleton.getInstance().getNativeDriver().getRegistry().registerMonitor(new DoricDevMonitor());
|
||||||
DoricSingleton.getInstance().getNativeDriver().getRegistry().setGlobalPerformanceAnchorHook(new DoricDevPerformanceAnchorHook());
|
DoricSingleton.getInstance().getNativeDriver().getRegistry().setGlobalPerformanceAnchorHook(new DoricDevPerformanceAnchorHook());
|
||||||
DoricSingleton.getInstance().getNativeDriver().getRegistry().registerNativePlugin(DoricDevkitPlugin.class);
|
DoricSingleton.getInstance().getNativeDriver().getRegistry().registerNativePlugin(DoricDevkitPlugin.class);
|
||||||
|
//Replace loader
|
||||||
|
DoricSingleton.getInstance().getNativeDriver().getRegistry().getResourceManager().registerLoader(new DoricDevAssetsLoader());
|
||||||
}
|
}
|
||||||
|
|
||||||
public static DoricDev getInstance() {
|
public static DoricDev getInstance() {
|
||||||
|
@ -0,0 +1,37 @@
|
|||||||
|
/*
|
||||||
|
* Copyright [2021] [Doric.Pub]
|
||||||
|
*
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
package pub.doric.devkit;
|
||||||
|
|
||||||
|
import pub.doric.DoricContext;
|
||||||
|
import pub.doric.resource.DoricAssetsLoader;
|
||||||
|
import pub.doric.resource.DoricAssetsResource;
|
||||||
|
import pub.doric.resource.DoricResource;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: Load assets in dev mode
|
||||||
|
* @Author: pengfei.zhou
|
||||||
|
* @CreateDate: 2021/12/7
|
||||||
|
*/
|
||||||
|
public class DoricDevAssetsLoader extends DoricAssetsLoader {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DoricResource load(DoricContext doricContext, String identifier) {
|
||||||
|
if (DoricDev.getInstance().isInDevMode()) {
|
||||||
|
|
||||||
|
}
|
||||||
|
return new DoricAssetsResource(doricContext, "assets/" + identifier);
|
||||||
|
}
|
||||||
|
}
|
@ -30,6 +30,7 @@
|
|||||||
#import "DoricDevMonitor.h"
|
#import "DoricDevMonitor.h"
|
||||||
#import "DoricDevPerformanceAnchorHook.h"
|
#import "DoricDevPerformanceAnchorHook.h"
|
||||||
#import "DoricDevkitPlugin.h"
|
#import "DoricDevkitPlugin.h"
|
||||||
|
#import "DoricDevAssetsLoader.h"
|
||||||
|
|
||||||
@interface DoricContextDebuggable : NSObject
|
@interface DoricContextDebuggable : NSObject
|
||||||
@property(nonatomic, weak) DoricContext *doricContext;
|
@property(nonatomic, weak) DoricContext *doricContext;
|
||||||
@ -83,6 +84,7 @@ - (instancetype)init {
|
|||||||
[DoricSingleton.instance.nativeDriver.registry registerMonitor:[DoricDevMonitor new]];
|
[DoricSingleton.instance.nativeDriver.registry registerMonitor:[DoricDevMonitor new]];
|
||||||
DoricSingleton.instance.nativeDriver.registry.globalPerformanceAnchorHook = [DoricDevPerformanceAnchorHook new];
|
DoricSingleton.instance.nativeDriver.registry.globalPerformanceAnchorHook = [DoricDevPerformanceAnchorHook new];
|
||||||
[DoricSingleton.instance.nativeDriver.registry registerNativePlugin:DoricDevkitPlugin.class withName:@"devkit"];
|
[DoricSingleton.instance.nativeDriver.registry registerNativePlugin:DoricDevkitPlugin.class withName:@"devkit"];
|
||||||
|
[DoricSingleton.instance.nativeDriver.registry.loaderManager registerLoader:[DoricDevAssetsLoader new]];
|
||||||
}
|
}
|
||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
|
9
doric-iOS/Devkit/Classes/DoricDevAssetsLoader.h
Normal file
9
doric-iOS/Devkit/Classes/DoricDevAssetsLoader.h
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
//
|
||||||
|
// Created by pengfei.zhou on 2021/12/7.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
#import <DoricCore/DoricAssetsResourceLoader.h>
|
||||||
|
|
||||||
|
@interface DoricDevAssetsLoader : DoricAssetsResourceLoader
|
||||||
|
@end
|
16
doric-iOS/Devkit/Classes/DoricDevAssetsLoader.m
Normal file
16
doric-iOS/Devkit/Classes/DoricDevAssetsLoader.m
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
//
|
||||||
|
// Created by pengfei.zhou on 2021/12/7.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "DoricDevAssetsLoader.h"
|
||||||
|
#import "DoricDev.h"
|
||||||
|
|
||||||
|
@implementation DoricDevAssetsLoader
|
||||||
|
|
||||||
|
- (__kindof DoricResource *)load:(NSString *)identifier withContext:(DoricContext *)context {
|
||||||
|
if (DoricDev.instance.isInDevMode) {
|
||||||
|
|
||||||
|
}
|
||||||
|
return [super load:identifier withContext:context];
|
||||||
|
}
|
||||||
|
@end
|
Reference in New Issue
Block a user