当前位置: 首页 > news >正文

网站开发一般多钱微网站建设方式

网站开发一般多钱,微网站建设方式,fantastico wordpress,展厅设计行业平台原文地址#xff1a;http://android.xsoftlab.net/training/secure-file-sharing/share-file.html 一旦APP设置通过URI的方式共享文件#xff0c;你需要响应其它APP请求这些文件的请求。响应这些请求的一种方式是#xff0c;在服务端APP上提供一个文件选择接口#xff0c;…原文地址http://android.xsoftlab.net/training/secure-file-sharing/share-file.html 一旦APP设置通过URI的方式共享文件你需要响应其它APP请求这些文件的请求。响应这些请求的一种方式是在服务端APP上提供一个文件选择接口以便其它的程序可以调用。这种方法允许客户端程序的用户从服务端选择一个文件然后接收被选择文件的URI地址。 这节课展示了如何在Activity中创建文件选择功能以便响应文件请求。 接收文件请求 为了接收客户端APP的文件请求以及以URI的方式作出响应APP应该在Activity中提供文件选择器。这样的话客户端APP可以通过调用startActivityForResult()方法启动这个Activity。当客户端调用了startActivityForResult()方法你的APP可以返回一个结果给客户端APP这个结果以URI的形式将用户选择的文件返回。 有关学习如何在客户端APP中实现文件的请求请参见课程 Requesting a Shared File。 创建一个文件选择器Activity 为了设置文件选择器Activity首选需要在清单文件中指定activity并在其中附加意图过滤器这个意图过滤器用来匹配行为ACTION_PICK以及类别CATEGORY_DEFAULT和CATEGORY_OPENABLE。还要给服务端给客户端提供的文件添加MIME类型过滤器。下面的代码片段展示了如何指定一个新Activity以及过滤器 manifest xmlns:androidhttp://schemas.android.com/apk/res/android...application...activityandroid:name.FileSelectActivityandroid:labelFile Selector intent-filteractionandroid:nameandroid.intent.action.PICK/categoryandroid:nameandroid.intent.category.DEFAULT/categoryandroid:nameandroid.intent.category.OPENABLE/data android:mimeTypetext/plain/data android:mimeTypeimage/*//intent-filter/activity 在代码中定义文件选择器 接下来定义一个Activity来展示内部存储器中files/images/目录下的可用文件并允许用户来选择需要的文件。下面这段代码演示了如何定义一个Activity来响应用户的选择 public class MainActivity extends Activity {// The path to the root of this apps internal storageprivate File mPrivateRootDir;// The path to the images subdirectoryprivate File mImagesDir;// Array of files in the images subdirectoryFile[] mImageFiles;// Array of filenames corresponding to mImageFilesString[] mImageFilenames;// Initialize the ActivityOverrideprotected void onCreate(Bundle savedInstanceState) {...// Set up an Intent to send back to apps that request a filemResultIntent new Intent(com.example.myapp.ACTION_RETURN_FILE);// Get the files/ subdirectory of internal storagemPrivateRootDir getFilesDir();// Get the files/images subdirectory;mImagesDir new File(mPrivateRootDir, images);// Get the files in the images subdirectorymImageFiles mImagesDir.listFiles();// Set the Activitys result to null to begin withsetResult(Activity.RESULT_CANCELED, null);/** Display the file names in the ListView mFileListView.* Back the ListView with the array mImageFilenames, which* you can create by iterating through mImageFiles and* calling File.getAbsolutePath() for each File*/...}... }响应文件选择器 一旦用户选择了被共享的文件你的程序必须检查哪一个文件被选中并且生成该文件的URI地址。前面的部分Activity在ListView中展示了可用的文件列表当用户点击了文件的名称随之系统会调用方法onItemClick()在这个方法中你可以获取到被选中的文件。 在onItemClick()方法中从被选择的文件中获得文件的File对象然后将这个对象作为参数传递给getUriForFile()它会伴随着权限一并加入这个权限是由 provider元素指定的。结果URI会包含权限、文件在相应目录中的路径段(在XML meta-data中指定的部分)以及文明的名称和其扩展部分。有关FileProvider如何映射meta-data与路径段的目录请看章节Specify Sharable Directories。 下面的代码段展示了如何检测被选择的文件以及获取该文件的URI protected void onCreate(Bundle savedInstanceState) {...// Define a listener that responds to clicks on a file in the ListViewmFileListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {Override/** When a filename in the ListView is clicked, get its* content URI and send it to the requesting app*/public void onItemClick(AdapterView? adapterView,View view,int position,long rowId) {/** Get a File for the selected file name.* Assume that the file names are in the* mImageFilename array.*/File requestFile new File(mImageFilename[position]);/** Most file-related method calls need to be in* try-catch blocks.*/// Use the FileProvider to get a content URItry {fileUri FileProvider.getUriForFile(MainActivity.this,com.example.myapp.fileprovider,requestFile);} catch (IllegalArgumentException e) {Log.e(File Selector,The selected file cant be shared: clickedFilename);}...}});...} 要记住你只可以对在 paths元素中指定目录下的文件进行URI编码就像Specify Sharable Directories这节课中描述的一样。如果你对getUriForFile()方法中传入的File参数并没有在 path元素中指定那么你会收到一个 IllegalArgumentException异常。 对文件授予权限 现在对将要分享的文件有了一个URI你需要允许客户端APP来访问这个文件。为了允许访问需要通过添加URI到一个Intent上并且在这个Intent上设置权限标志。产生的这个权限是个临时权限并且会在接收端APP任务结束的时候自动终止。 下面这段代码展示了如何对文件设置读取权限 protected void onCreate(Bundle savedInstanceState) {...// Define a listener that responds to clicks in the ListViewmFileListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {Overridepublic void onItemClick(AdapterView? adapterView,View view,int position,long rowId) {...if (fileUri ! null) {// Grant temporary read permission to the content URImResultIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);}...}...});...} Caution:安全的对文件授予临时访问权限setFlags()是唯一的方式。要避免对文件的URI使用Context.grantUriPermission()方法因为该方法授予的权限只可以通过Context.revokeUriPermission()方法撤销。 对客户端APP共享文件 如果要共享文件给客户端APP需要传递一个Intent给setResult()这个Intent包含了文件的URI以及访问权限。当你定义的这个Activity结束时系统会发送这个Intent给客户端APP下面这段代码展示了如何实现这部分功能 protected void onCreate(Bundle savedInstanceState) {...// Define a listener that responds to clicks on a file in the ListViewmFileListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {Overridepublic void onItemClick(AdapterView? adapterView,View view,int position,long rowId) {...if (fileUri ! null) {...// Put the Uri and MIME type in the result IntentmResultIntent.setDataAndType(fileUri,getContentResolver().getType(fileUri));// Set the resultMainActivity.this.setResult(Activity.RESULT_OK,mResultIntent);} else {mResultIntent.setDataAndType(null, );MainActivity.this.setResult(RESULT_CANCELED,mResultIntent);}}}); 一旦用户选择了文件那么就应该立即带用户返回客户端APP。实现这种方式的一种方法就是提供一个钩形符号或者结束按钮。使用Button的android:onClick属性与对应的Button相关联。在方法中。调用finish()方法 public void onDoneClick(View v) {// Associate a method with the Done buttonfinish();}
http://www.zqtcl.cn/news/62575/

相关文章:

  • 成都微信网站建设多少福田建网站公司
  • 温州网站 公司营销网站建设规划方案
  • 产品宣传册设计网站建设来广营做网站公司
  • 织梦茶叶网站模板建设信用卡申请进度查询官方网站
  • 宁波网站推广网站优化云服务器做网站详细
  • 中卫网站建设谷歌网站推广
  • 做阅读理解的网站山西网站建设方案
  • 查询建设公司业绩网站wordpress最近浏览器
  • 类似站酷的设计网站小区网络设计方案
  • 中介网站模板网站模块建设建议
  • wordpress快速仿站视频教程旅游网站怎么做的
  • 长沙网站建设多少钱上犹建设局网站
  • 网站正在建设中 代码南昌网站搭建制作公司
  • 鞍山网站设计制作大型门户网站开发
  • 网站开发服务器数据库东莞自媒体运营推广公司
  • 可以做ps兼职的网站水果商城网站模板
  • tk网站域名100个创意创业项目
  • 王者荣耀做网站视觉差网站制作
  • wordpress 建站案例网站备案证图片
  • 怎么才能提高网站点击量 免费如何建立网站
  • 威海网站制作百度打开百度搜索
  • 建筑设计资料网站wordpress后门插件
  • 网站推广需求腾讯街景地图实景手机版
  • 做博客用什么系统做网站好wordpress小程序扫码登录
  • 宜昌视频网站建设深圳制作网站培训学校
  • 如何做简单的网站服务器win7网站建设
  • 新沂网站建设公司肇庆市建设局网站
  • 包头住房与城乡建设局网站网站建设费可以计业务费吗
  • 一个专门做网站建设的公司找工程项目的平台
  • 网站开发平台开发wordpress文章后面评论