public synchronized FsFile getCompileTimeSystemResourcesFile(DependencyResolver dependencyResolver) { if (compileTimeSystemResourcesFile == null) { DependencyJar compileTimeJar = new SdkConfig(27).getAndroidSdkDependency(); compileTimeSystemResourcesFile = Fs.newFile(dependencyResolver.getLocalArtifactUrl(compileTimeJar).getFile()); } return compileTimeSystemResourcesFile; }
@Override public TypedResource getValue(@Nonnull ResName resName, ResTable_config config) { System.out.println("getValue(" + resName + ", \"" + config + "\")"); return new TypedResource<>(null, ResType.NULL, new XmlContext("", Fs.newFile("."), Qualifiers.parse(""))); }
@Override public TypedResource getValue(int resId, ResTable_config config) { System.out.println("getValue(" + resId + ", \"" + config + "\")"); return new TypedResource<>(null, ResType.NULL, new XmlContext("", Fs.newFile("."), Qualifiers.parse(""))); }
try { dependencyResolver = new PropertiesDependencyResolver( Fs.newFile(propPath), null); } catch (IOException e) {
final URI absolutePath = URI.create(resourceUrl.getPath()); final URI relativePath = workingDirectory.relativize(absolutePath); manifestFile = Fs.newFile(relativePath.toString()); } else { manifestFile = getBaseDir().join(manifestPath);
private FsFile[] asFsFiles(File[] files) { if (files == null) return null; FsFile[] fsFiles = new FsFile[files.length]; for (int i = 0; i < files.length; i++) { fsFiles[i] = Fs.newFile(files[i]); } return fsFiles; }
private FsFile[] asFsFiles(File[] files) { if (files == null) return null; FsFile[] fsFiles = new FsFile[files.length]; for (int i = 0; i < files.length; i++) { fsFiles[i] = Fs.newFile(files[i]); } return fsFiles; }
@Override public FsFile getParent() { File parentFile = file.getParentFile(); return parentFile == null ? null : Fs.newFile(parentFile); }
@Override public FsFile getParent() { File parentFile = file.getParentFile(); return parentFile == null ? null : Fs.newFile(parentFile); }
public static FsFile currentDirectory() { return newFile(new File(".")); }
public static FsFile currentDirectory() { return newFile(new File(".")); }
@Override public FsFile join(String... pathParts) { File f = file; for (String pathPart : pathParts) { for (String part : pathPart.split(Pattern.quote(FILE_SEPARATOR), 0)) { if (!part.equals(".")) { f = new File(f, part); } } } return Fs.newFile(f); }
@Override public FsFile join(String... pathParts) { File f = file; for (String pathPart : pathParts) { for (String part : pathPart.split(Pattern.quote(FILE_SEPARATOR))) { if (!part.equals(".")) { f = new File(f, part); } } } return Fs.newFile(f); }
public List<AssetPath> getAssetPaths() { ArrayList<AssetPath> assetPaths = new ArrayList<>(apk_assets_.size()); for (CppApkAssets apkAssets : apk_assets_) { FsFile fsFile = Fs.newFile(apkAssets.GetPath()); assetPaths.add(new AssetPath(fsFile, apkAssets.GetLoadedArsc().IsSystem())); } return assetPaths; }
public List<AssetPath> getAssetPaths() { synchronized (mLock) { ArrayList<AssetPath> assetPaths = new ArrayList<>(mAssetPaths.size()); for (asset_path asset_path : mAssetPaths) { FsFile fsFile; switch (asset_path.type) { case kFileTypeDirectory: fsFile = Fs.newFile(asset_path.path.string()); break; case kFileTypeRegular: fsFile = Fs.newFile(asset_path.path.string()); break; default: throw new IllegalStateException("Unsupported type " + asset_path.type + " for + " + asset_path.path.string()); } assetPaths.add(new AssetPath(fsFile, asset_path.isSystemAsset)); } return assetPaths; } } }
@Override Collection<FsFile> getAllAssetDirs() { ApkAssets[] apkAssetsArray = ReflectionHelpers.callInstanceMethod(realAssetManager, "getApkAssets"); ArrayList<FsFile> fsFiles = new ArrayList<>(); for (ApkAssets apkAssets : apkAssetsArray) { long apk_assets_native_ptr = ((ShadowArscApkAssets9) Shadow.extract(apkAssets)).getNativePtr(); CppApkAssets cppApkAssets = Registries.NATIVE_APK_ASSETS_REGISTRY.getNativeObject(apk_assets_native_ptr); if (new File(cppApkAssets.GetPath()).isFile()) { fsFiles.add(Fs.newJarFile(new File(cppApkAssets.GetPath())).join("assets")); } else { fsFiles.add(Fs.newFile(cppApkAssets.GetPath())); } } return fsFiles; }