Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f2a6af4b authored by Songchun Fan's avatar Songchun Fan Committed by Android (Google) Code Review
Browse files

Merge "[incremental] respect extractNativeLibs in native lib config" into rvc-dev

parents 09aa3bc4 14f6c3c7
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -111,9 +111,9 @@ interface IIncrementalService {
    void deleteStorage(int storageId);

    /**
     * Setting up native library directories and extract native libs onto a storage.
     * Setting up native library directories and extract native libs onto a storage if needed.
     */
    boolean configureNativeBinaries(int storageId, in @utf8InCpp String apkFullPath, in @utf8InCpp String libDirRelativePath, in @utf8InCpp String abi);
    boolean configureNativeBinaries(int storageId, in @utf8InCpp String apkFullPath, in @utf8InCpp String libDirRelativePath, in @utf8InCpp String abi, boolean extractNativeLibs);

    /**
     * Waits until all native library extraction is done for the storage
+5 −2
Original line number Diff line number Diff line
@@ -469,12 +469,15 @@ public final class IncrementalStorage {
     * @param apkFullPath Source APK to extract native libs from.
     * @param libDirRelativePath Target dir to put lib files, e.g., "lib" or "lib/arm".
     * @param abi Target ABI of the native lib files. Only extract native libs of this ABI.
     * @param extractNativeLibs If true, extract native libraries; otherwise just setup directories
     *                          without extracting.
     * @return Success of not.
     */
    public boolean configureNativeBinaries(String apkFullPath, String libDirRelativePath,
            String abi) {
            String abi, boolean extractNativeLibs) {
        try {
            return mService.configureNativeBinaries(mId, apkFullPath, libDirRelativePath, abi);
            return mService.configureNativeBinaries(mId, apkFullPath, libDirRelativePath, abi,
                    extractNativeLibs);
        } catch (RemoteException e) {
            e.rethrowFromSystemServer();
            return false;
+2 −1
Original line number Diff line number Diff line
@@ -506,7 +506,8 @@ public class NativeLibraryHelper {
        }

        for (int i = 0; i < apkPaths.length; i++) {
            if (!incrementalStorage.configureNativeBinaries(apkPaths[i], libRelativeDir, abi)) {
            if (!incrementalStorage.configureNativeBinaries(apkPaths[i], libRelativeDir, abi,
                    handle.extractNativeLibs)) {
                return PackageManager.INSTALL_FAILED_INTERNAL_ERROR;
            }
        }
+3 −2
Original line number Diff line number Diff line
@@ -280,8 +280,9 @@ binder::Status BinderIncrementalService::startLoading(int32_t storageId, bool* _

binder::Status BinderIncrementalService::configureNativeBinaries(
        int32_t storageId, const std::string& apkFullPath, const std::string& libDirRelativePath,
        const std::string& abi, bool* _aidl_return) {
    *_aidl_return = mImpl.configureNativeBinaries(storageId, apkFullPath, libDirRelativePath, abi);
        const std::string& abi, bool extractNativeLibs, bool* _aidl_return) {
    *_aidl_return = mImpl.configureNativeBinaries(storageId, apkFullPath, libDirRelativePath, abi,
                                                  extractNativeLibs);
    return ok();
}

+2 −1
Original line number Diff line number Diff line
@@ -77,7 +77,8 @@ public:

    binder::Status configureNativeBinaries(int32_t storageId, const std::string& apkFullPath,
                                           const std::string& libDirRelativePath,
                                           const std::string& abi, bool* _aidl_return) final;
                                           const std::string& abi, bool extractNativeLibs,
                                           bool* _aidl_return) final;
    binder::Status waitForNativeBinariesExtraction(int storageId, bool* _aidl_return) final;

private:
Loading