Как добавить дополнительные необходимые файлы в каталог приложения? - PullRequest
0 голосов
/ 06 января 2019

Я новичок в Android Development, я гуглил этот ответ, но многое зависит только от того, как загрузить музыку и другие материалы на ваше устройство.

Некоторая информация

У меня есть приложение, которое компилируется в c ++, которое будет запускаться на устройстве, когда я нажимаю на него с помощью gradlew installDebug. Проблема в том, что я хочу добавить довольно большие зависимости, составляющие около 1 ГБ в файловом пространстве.

Я заметил, что вообще не могу писать в каталог / data / app / app-name, когда пытался использовать push-файлы adb.

Есть ли способ переместить их туда во время установки или как это сделать? Помните, что мое приложение написано на C ++ и использует ndk-builder для кросс-компиляции.

Короче говоря:

В идеале я бы хотел, чтобы у пользователя была возможность иметь все необходимые ему файлы при установке приложения. Как я могу / должен это сделать?

1 Ответ

0 голосов
/ 12 января 2019

Таким образом, ответ заключается в том, что вы можете добавить файлы в папку / data / app / res / после установки, но она должна быть небольшой, я думаю, менее 100 МБ.

Вы можете просто пометить разрешение пользователя для manafest и сохранить данные в / sdcard / Yourcreatedfolder , а затем получить к нему доступ, как и к любому другому каталогу в C.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="pvallet.com.github.hello_sdl2">


    <application
        android:allowBackup="true"
        android:label="@string/app_name"
        android:icon="@mipmap/ic_launcher"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"    
    android:theme="@style/AppTheme"    


    >
        <activity
            android:name=".HelloSDL2Activity"
        android:screenOrientation="landscape"
            android:windowSoftInputMode="stateVisible|adjustResize"
        android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
            android:label="@string/app_name"
            android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"


        >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
           <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"   />
</manifest>
...