Save file to internal directory in Android Studio Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) The Ask Question Wizard is Live! Data science time! April 2019 and salary with experienceIs there a way to run Python on Android?How do save an Android Activity state using save instance state?Close/hide the Android Soft KeyboardWhy is the Android emulator so slow? How can we speed up the Android emulator?“Debug certificate expired” error in Eclipse Android pluginsIs there a unique Android device ID?Able to insert passed image value into sdcard?What is 'Context' on Android?Proper use cases for Android UserManager.isUserAGoat()?Android Studio: Add jar as library?

What are the performance impacts of 'functional' Rust?

What would be Julian Assange's expected punishment, on the current English criminal law?

Area of a 2D convex hull

How do I keep my slimes from escaping their pens?

If I can make up priors, why can't I make up posteriors?

Writing Thesis: Copying from published papers

I'm having difficulty getting my players to do stuff in a sandbox campaign

Why use gamma over alpha radiation?

What to do with post with dry rot?

Replacing HDD with SSD; what about non-APFS/APFS?

New Order #5: where Fibonacci and Beatty meet at Wythoff

Two different pronunciation of "понял"

3 doors, three guards, one stone

What was the last x86 CPU that did not have the x87 floating-point unit built in?

Geometric mean and geometric standard deviation

Can a monk deflect thrown melee weapons?

Can a zero nonce be safely used with AES-GCM if the key is random and never used again?

Why is there no army of Iron-Mans in the MCU?

Is above average number of years spent on PhD considered a red flag in future academia or industry positions?

What LEGO pieces have "real-world" functionality?

Need a suitable toxic chemical for a murder plot in my novel

Keep going mode for require-package

What did Darwin mean by 'squib' here?

I'm thinking of a number



Save file to internal directory in Android Studio



Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)
The Ask Question Wizard is Live!
Data science time! April 2019 and salary with experienceIs there a way to run Python on Android?How do save an Android Activity state using save instance state?Close/hide the Android Soft KeyboardWhy is the Android emulator so slow? How can we speed up the Android emulator?“Debug certificate expired” error in Eclipse Android pluginsIs there a unique Android device ID?Able to insert passed image value into sdcard?What is 'Context' on Android?Proper use cases for Android UserManager.isUserAGoat()?Android Studio: Add jar as library?



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








0















I downloaded the SQLite database from Firebase. It saves into device storage (Android/data/package name/files/Download). I want to save the database to the internal directory. (like assets folder to use it). I want no person can access to this file after decompiling app. It worked with error, what's the problem?



private void downloadFileFirebase()

storageReference = FirebaseStorage.getInstance().getReference("test.sqlite");
storageReference.getBytes(1024*1024).addOnSuccessListener(new OnSuccessListener<byte[]>()
@Override
public void onSuccess(byte[] bytes)
final String path =Environment.getExternalStorageDirectory().getAbsolutePath()
+ DB_PATH ;
try
writeToFile(bytes , path);
Toast.makeText(MainActivity.this, "DONE", Toast.LENGTH_SHORT).show();
catch (IOException e)
e.printStackTrace();
Toast.makeText(MainActivity.this, "ERROR", Toast.LENGTH_SHORT).show();


).addOnFailureListener(new OnFailureListener()
@Override
public void onFailure(@NonNull Exception e)
Toast.makeText(MainActivity.this, "FAILD", Toast.LENGTH_SHORT).show();

);



And:



private void writeToFile(byte[] bytes, String filename) throws IOException 
FileOutputStream out = new FileOutputStream(filename);
out.write(bytes);
out.close();



The error:



java.io.FileNotFoundException: /storage/emulated/0/data/user/0/ir.seljad.sqlitechipher/databases (No such file or directory)









share|improve this question






























    0















    I downloaded the SQLite database from Firebase. It saves into device storage (Android/data/package name/files/Download). I want to save the database to the internal directory. (like assets folder to use it). I want no person can access to this file after decompiling app. It worked with error, what's the problem?



    private void downloadFileFirebase()

    storageReference = FirebaseStorage.getInstance().getReference("test.sqlite");
    storageReference.getBytes(1024*1024).addOnSuccessListener(new OnSuccessListener<byte[]>()
    @Override
    public void onSuccess(byte[] bytes)
    final String path =Environment.getExternalStorageDirectory().getAbsolutePath()
    + DB_PATH ;
    try
    writeToFile(bytes , path);
    Toast.makeText(MainActivity.this, "DONE", Toast.LENGTH_SHORT).show();
    catch (IOException e)
    e.printStackTrace();
    Toast.makeText(MainActivity.this, "ERROR", Toast.LENGTH_SHORT).show();


    ).addOnFailureListener(new OnFailureListener()
    @Override
    public void onFailure(@NonNull Exception e)
    Toast.makeText(MainActivity.this, "FAILD", Toast.LENGTH_SHORT).show();

    );



    And:



    private void writeToFile(byte[] bytes, String filename) throws IOException 
    FileOutputStream out = new FileOutputStream(filename);
    out.write(bytes);
    out.close();



    The error:



    java.io.FileNotFoundException: /storage/emulated/0/data/user/0/ir.seljad.sqlitechipher/databases (No such file or directory)









    share|improve this question


























      0












      0








      0








      I downloaded the SQLite database from Firebase. It saves into device storage (Android/data/package name/files/Download). I want to save the database to the internal directory. (like assets folder to use it). I want no person can access to this file after decompiling app. It worked with error, what's the problem?



      private void downloadFileFirebase()

      storageReference = FirebaseStorage.getInstance().getReference("test.sqlite");
      storageReference.getBytes(1024*1024).addOnSuccessListener(new OnSuccessListener<byte[]>()
      @Override
      public void onSuccess(byte[] bytes)
      final String path =Environment.getExternalStorageDirectory().getAbsolutePath()
      + DB_PATH ;
      try
      writeToFile(bytes , path);
      Toast.makeText(MainActivity.this, "DONE", Toast.LENGTH_SHORT).show();
      catch (IOException e)
      e.printStackTrace();
      Toast.makeText(MainActivity.this, "ERROR", Toast.LENGTH_SHORT).show();


      ).addOnFailureListener(new OnFailureListener()
      @Override
      public void onFailure(@NonNull Exception e)
      Toast.makeText(MainActivity.this, "FAILD", Toast.LENGTH_SHORT).show();

      );



      And:



      private void writeToFile(byte[] bytes, String filename) throws IOException 
      FileOutputStream out = new FileOutputStream(filename);
      out.write(bytes);
      out.close();



      The error:



      java.io.FileNotFoundException: /storage/emulated/0/data/user/0/ir.seljad.sqlitechipher/databases (No such file or directory)









      share|improve this question
















      I downloaded the SQLite database from Firebase. It saves into device storage (Android/data/package name/files/Download). I want to save the database to the internal directory. (like assets folder to use it). I want no person can access to this file after decompiling app. It worked with error, what's the problem?



      private void downloadFileFirebase()

      storageReference = FirebaseStorage.getInstance().getReference("test.sqlite");
      storageReference.getBytes(1024*1024).addOnSuccessListener(new OnSuccessListener<byte[]>()
      @Override
      public void onSuccess(byte[] bytes)
      final String path =Environment.getExternalStorageDirectory().getAbsolutePath()
      + DB_PATH ;
      try
      writeToFile(bytes , path);
      Toast.makeText(MainActivity.this, "DONE", Toast.LENGTH_SHORT).show();
      catch (IOException e)
      e.printStackTrace();
      Toast.makeText(MainActivity.this, "ERROR", Toast.LENGTH_SHORT).show();


      ).addOnFailureListener(new OnFailureListener()
      @Override
      public void onFailure(@NonNull Exception e)
      Toast.makeText(MainActivity.this, "FAILD", Toast.LENGTH_SHORT).show();

      );



      And:



      private void writeToFile(byte[] bytes, String filename) throws IOException 
      FileOutputStream out = new FileOutputStream(filename);
      out.write(bytes);
      out.close();



      The error:



      java.io.FileNotFoundException: /storage/emulated/0/data/user/0/ir.seljad.sqlitechipher/databases (No such file or directory)






      android firebase firebase-storage






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 22 at 9:32









      paulina_glab

      2,26721225




      2,26721225










      asked Mar 22 at 7:39







      user11241569





























          2 Answers
          2






          active

          oldest

          votes


















          0














          Android data/files directory is the internal storage dir.



          assets and raw directories are a build-time resources directories and does not exists on phone. this means you can not download files into them in runtime.



          Also files dir is not accessible for release apps unless device is rooted and you can always use some sort of encrypted db.






          share|improve this answer






























            0














            Environment.getExternalStorageDirectory() will return the external storage path. not internal, you should use Context.getDatabasePath(String name) instead to retrieve the internal database path






            share|improve this answer























            • thank you, sir. can you show me an example code? how to save in internal and use it?

              – user11241569
              Mar 22 at 8:23











            Your Answer






            StackExchange.ifUsing("editor", function ()
            StackExchange.using("externalEditor", function ()
            StackExchange.using("snippets", function ()
            StackExchange.snippets.init();
            );
            );
            , "code-snippets");

            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "1"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );













            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55294910%2fsave-file-to-internal-directory-in-android-studio%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown
























            2 Answers
            2






            active

            oldest

            votes








            2 Answers
            2






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            Android data/files directory is the internal storage dir.



            assets and raw directories are a build-time resources directories and does not exists on phone. this means you can not download files into them in runtime.



            Also files dir is not accessible for release apps unless device is rooted and you can always use some sort of encrypted db.






            share|improve this answer



























              0














              Android data/files directory is the internal storage dir.



              assets and raw directories are a build-time resources directories and does not exists on phone. this means you can not download files into them in runtime.



              Also files dir is not accessible for release apps unless device is rooted and you can always use some sort of encrypted db.






              share|improve this answer

























                0












                0








                0







                Android data/files directory is the internal storage dir.



                assets and raw directories are a build-time resources directories and does not exists on phone. this means you can not download files into them in runtime.



                Also files dir is not accessible for release apps unless device is rooted and you can always use some sort of encrypted db.






                share|improve this answer













                Android data/files directory is the internal storage dir.



                assets and raw directories are a build-time resources directories and does not exists on phone. this means you can not download files into them in runtime.



                Also files dir is not accessible for release apps unless device is rooted and you can always use some sort of encrypted db.







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Mar 22 at 7:47









                Atef HaresAtef Hares

                2,76031743




                2,76031743























                    0














                    Environment.getExternalStorageDirectory() will return the external storage path. not internal, you should use Context.getDatabasePath(String name) instead to retrieve the internal database path






                    share|improve this answer























                    • thank you, sir. can you show me an example code? how to save in internal and use it?

                      – user11241569
                      Mar 22 at 8:23















                    0














                    Environment.getExternalStorageDirectory() will return the external storage path. not internal, you should use Context.getDatabasePath(String name) instead to retrieve the internal database path






                    share|improve this answer























                    • thank you, sir. can you show me an example code? how to save in internal and use it?

                      – user11241569
                      Mar 22 at 8:23













                    0












                    0








                    0







                    Environment.getExternalStorageDirectory() will return the external storage path. not internal, you should use Context.getDatabasePath(String name) instead to retrieve the internal database path






                    share|improve this answer













                    Environment.getExternalStorageDirectory() will return the external storage path. not internal, you should use Context.getDatabasePath(String name) instead to retrieve the internal database path







                    share|improve this answer












                    share|improve this answer



                    share|improve this answer










                    answered Mar 22 at 7:53









                    Tang KeTang Ke

                    1,338911




                    1,338911












                    • thank you, sir. can you show me an example code? how to save in internal and use it?

                      – user11241569
                      Mar 22 at 8:23

















                    • thank you, sir. can you show me an example code? how to save in internal and use it?

                      – user11241569
                      Mar 22 at 8:23
















                    thank you, sir. can you show me an example code? how to save in internal and use it?

                    – user11241569
                    Mar 22 at 8:23





                    thank you, sir. can you show me an example code? how to save in internal and use it?

                    – user11241569
                    Mar 22 at 8:23

















                    draft saved

                    draft discarded
















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55294910%2fsave-file-to-internal-directory-in-android-studio%23new-answer', 'question_page');

                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Kamusi Yaliyomo Aina za kamusi | Muundo wa kamusi | Faida za kamusi | Dhima ya picha katika kamusi | Marejeo | Tazama pia | Viungo vya nje | UrambazajiKuhusu kamusiGo-SwahiliWiki-KamusiKamusi ya Kiswahili na Kiingerezakuihariri na kuongeza habari

                    Swift 4 - func physicsWorld not invoked on collision? The Next CEO of Stack OverflowHow to call Objective-C code from Swift#ifdef replacement in the Swift language@selector() in Swift?#pragma mark in Swift?Swift for loop: for index, element in array?dispatch_after - GCD in Swift?Swift Beta performance: sorting arraysSplit a String into an array in Swift?The use of Swift 3 @objc inference in Swift 4 mode is deprecated?How to optimize UITableViewCell, because my UITableView lags

                    Access current req object everywhere in Node.js ExpressWhy are global variables considered bad practice? (node.js)Using req & res across functionsHow do I get the path to the current script with Node.js?What is Node.js' Connect, Express and “middleware”?Node.js w/ express error handling in callbackHow to access the GET parameters after “?” in Express?Modify Node.js req object parametersAccess “app” variable inside of ExpressJS/ConnectJS middleware?Node.js Express app - request objectAngular Http Module considered middleware?Session variables in ExpressJSAdd properties to the req object in expressjs with Typescript