访问内部SD卡文件时出错

时间:2017-06-07 19:00:50

标签: java android

我是Android新手。我试图在内部存储中打开一个文件。

该文件位于: mnt / sdcard / italy.sqlite 。网上有很多解决方案,我尝试过一些,但是我会保持不同的错误..

首先尝试:

String extStore = System.getenv("EXTERNAL_STORAGE"); 

File spatialDbFile = new File(extStore, "italy.sqlite");

我打印System.getenv("EXTERNAL_STORAGE");,我得到了:

  

/ SD卡

第二次尝试:

File spatialDbFile = new File("mnt/sdcard/italy.sqlite");

这仍然不起作用。

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:-2)

您最好检查一下您是否已授予在Manifest文件中打开内部存储文件的权限。 它会像 -

//Here is an example of the manifest file:

<?xml version="1.0" encoding="utf-8"?>

<manifest>

    <uses-permission />
    <permission />
    <permission-tree />
    <permission-group />
    <instrumentation />
    <uses-sdk />
    <uses-configuration />  
    <uses-feature />  
    <supports-screens />  
    <compatible-screens />  
    <supports-gl-texture />  

    <application>

        <activity>
            <intent-filter>
                <action />
                <category />
                <data />
            </intent-filter>
            <meta-data />
        </activity>

        <activity-alias>
            <intent-filter> . . . </intent-filter>
            <meta-data />
        </activity-alias>

        <service>
            <intent-filter> . . . </intent-filter>
            <meta-data/>
        </service>

        <receiver>
            <intent-filter> . . . </intent-filter>
            <meta-data />
        </receiver>

        <provider>
            <grant-uri-permission />
            <meta-data />
            <path-permission />
        </provider>

        <uses-library />

    </application>

</manifest>