跳至主要内容

android open file provider type

  • add a FileProvider tag in AndroidManifest.xml under tag.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    ...
    <application
        ...
        <provider
            android:name="android.support.v4.content.FileProvider"
            android:authorities="${applicationId}.provider"
            android:exported="false"
            android:grantUriPermissions="true">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/provider_paths"/>
        </provider>
    </application>
</manifest>
  • then create a provider_paths.xml file in xml folder under res folder. Folder may be needed to create if it doesn't exist. The content of the file is shown below. It describes that we would like to share access to the External Storage at root folder (path=".") with the name external_files.
<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
    <external-path name="external_files" path="."/>
</paths>
Intent i=new Intent(Intent.ACTION_VIEW, FileProvider.getUriForFile(context, context.getApplicationContext().getPackageName() + ".provider", new File());
i.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
try{startActivity(i);}catch(Exception e){e.trace..;}

评论

此博客中的热门博文

go url encoding

func  QueryUnescape func QueryUnescape (s string ) ( string , error ) QueryUnescape does the inverse transformation of QueryEscape, converting %AB into the byte 0xAB and '+' into ' ' (space). It returns an error if any % is not followed by two hexadecimal digits. func  QueryUnescape func QueryUnescape (s string ) ( string , error ) QueryUnescape does the inverse transformation of QueryEscape, converting %AB into the byte 0xAB and '+' into ' ' (space). It returns an error if any % is not followed by two hexadecimal digits.

mongo db mongodb search index engine

创建全文索引 考虑以下 posts 集合的文档数据,包含了文章内容(post_text)及标签(tags): { "post_text" : "enjoy the mongodb articles on Runoob" , "tags" : [ "mongodb" , "runoob" ] } 我们可以对 post_text 字段建立全文索引,这样我们可以搜索文章内的内容: > db . posts . ensureIndex ({ post_text : "text" }) 使用全文索引 现在我们已经对 post_text 建立了全文索引,我们可以搜索文章中的关键词 runoob: > db . posts . find ({ $text :{ $search : "runoob" }})