Articles of android intent

在Android中实现文件选择器并将所选文件复制到另一个位置

我正在尝试在我的Android项目中实现文件选择器。 到目前为止我能做的是: Intent chooseFile; Intent intent; chooseFile = new Intent(Intent.ACTION_GET_CONTENT); chooseFile.setType(“*/*”); intent = Intent.createChooser(chooseFile, “Choose a file”); startActivityForResult(intent, PICKFILE_RESULT_CODE); 然后在我的onActivityResult() switch(requestCode){ case PICKFILE_RESULT_CODE: if(resultCode==-1){ Uri uri = data.getData(); String filePath = uri.getPath(); Toast.makeText(getActivity(), filePath, Toast.LENGTH_LONG).show(); } break; } 这是打开文件选择器,但它不是我想要的。 例如,我想选择一个文件(.txt),然后获取该File然后使用它。 有了这段代码,我想我会得到完整的路径,但它不会发生; 例如,我得到: /document/5318/ 。 但是通过这条路径我无法获取文件。 我创建了一个名为PathToFile()的方法,它返回一个File : private File PathToFile(String path) { File tempFileToUpload; tempFileToUpload […]

从Intent.ACTION_PICK返回的URI中获取特定的联系信息

我正在编写一个Android应用程序,其数据types代表一个人(特别是孩子的父母或监护人)。 我希望能够从Android设备的“联系人”数据库​​中“导入”相关数据字段。 (这应该是可选的;也就是说,不要求父/监护人已经在联系人数据库中,如果他们添加新的父母/监护人,也不会更新联系人数据库。) 到目前为止,我已经编写了代码来启动一个新的Intent来选择特定的Contact(使用Intent.ACTION_PICK)。 然后,我获得一个表示数据库中特定联系人的URI。 不幸的是,我不知道下一步是什么。 看起来这应该是世界上最简单的事情,但显然不是。 我已经阅读了Android开发者网站上的文档,我查看了多本Android手册。 没有快乐。 我想得到的具体信息是: 联系人姓名(如果可能,首先和最后一个) 联系人(主要)电子邮件地址 联系人的手机号码 我想通过使用ContentResolver查询应该可以做到这一点,但是我不知道如何使用Intent返回的URI来做到这一点。 大多数文档假定您具有联系人ID,而不是联系人的URI。 此外,我不知道我可以在查询的投影中添加哪种字段,假设这甚至是我想要的正确方法。 这是我的起始代码: // In a button’s onClick event handler: Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI); startActivityForResult(intent, PICK_CONTACT); // In onActivityResult: if (resultCode == RESULT_OK) { if (requestCode == PICK_CONTACT) { contactURI = data.getData(); // NOW WHAT? } }

我无法让Android搜索界面在Action Bar中运行

我试着按照这里的指南,但我遇到了一些问题。 我正确地将搜索图标显示在操作栏中,但是我无法将searchable configuration附加到SearchView。 我的res / menu / options_menu.xml文件: 我的res / xml / searchable.xml文件(注意:我必须在res文件夹中创建一个“xml”文件夹,因为一个文件夹不存在。我不认为这应该会有所不同吗? 我的res / values / strings.xml文件: Starting To Feel It Single Post View Search Activity Settings Last Next Play Previous Next Playlist Progress Bar Open navigation drawer Close navigation drawer Search STFI Search STFI Menu Item Picture 我的AndroidManifest.xml文件: 我的所有活动都扩展了一个名为MenuActivity的类,这里是MenuActivity.java中定义的onCreateOptionsMenu函数: @Override public boolean onCreateOptionsMenu(Menu […]

以编程方式从应用程序启动Skype并传递号码 – Android

试图启动并传递电话。 没有。 从我的应用程序通过此代码skype: PackageManager packageManager = getPackageManager(); Intent skype = packageManager.getLaunchIntentForPackage(“com.skype.raider”); skype.setData(Uri.parse(“tel:65465446”)); startActivity(skype); Skype推出但它无法捕捉到这个数字。

startActivityForResult和Intents Extras,看起来额外的东西不会被推回去

我有这个代码: Intent intent = new Intent(); intent.setAction(Intent.ACTION_PICK); intent.setData(ContactsContract.Contacts.CONTENT_URI); intent.putExtra(EXTRA_ONLINE_ID, (String) v.getTag()); startActivityForResult(intent, PICK_CONTACT); 然后回复: public void onActivityResult(int reqCode, int resultCode, Intent data) { switch (reqCode) { case (PICK_CONTACT): if (resultCode == Activity.RESULT_OK) { try { Uri contactData = data.getData(); String onlineid = data.getStringExtra(EXTRA_ONLINE_ID); } catch (Exception e) { e.printStackTrace(); } } break; } super.onActivityResult(reqCode, resultCode, […]

使用双SIM卡设备中的指定SIM拨打电话

过去几天我一直在寻找这个,我开始知道: “开箱即用的Android不支持双SIM卡。这是制造商的自定义修改,并且没有公共API来控制它。” 下面的链接提供了一个解决方案,但它不能在我的手机三星Galaxy S4 Mini上运行。 从第二个sim调用 我也find了这个链接,我发现它非常有用。 http://www.devlper.com/2010/06/using-android–telephonymanager/ 现在我知道使用下面的代码,我可能有幸运行它: Intent callIntent = new Intent(Intent.ACTION_CALL) .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); callIntent.setData(Uri.parse(“tel:” + phone)); context.startActivity(callIntent); callIntent.putExtra(“com.android.phone.extra.slot”, 0); //For sim 1 and callIntent.putExtra(“com.android.phone.extra.slot”, 1); //For sim 2 我不确定这一点,但我有一个问题。 在SIM卡管理器部分下的设置中,当我必须为语音呼叫选择首选SIM卡时,我有四个选项: 当前网络 总是问 SIM 1 SIM 2 当我选择“始终询问”选项时,在拨打电话之前,我总是被要求选择一个显示在对话框中的SIM卡来拨打电话。 我的问题是我可以在我的应用程序中利用这个东西,我按下按钮拨打电话,但它总是问我,当我选择Ask Always选项时它的方式相同。 对不起,我把这个问题写得很冗长,但我认为这需要它。 请提前帮助和非常感谢。 编辑: 每次按下任何按钮(类似于“设置”中的“始终询问”选项)时,如何实现此目的:

将多个标志传递给android中的intent

我有这个活动列出了一些我提供刷新按钮的信息。 我刷新它的方式(可能不是最好的方式)只是重新启动活动。 为了使后台堆栈以我需要的方式工作,我需要将FLAG_ACTIVITY_CLEAR_TOP标志传递给intent,它工作正常。 但是为了给出一种错觉,即信息正在刷新活动中的信息而不是完全重新启动它,我还需要添加标志FLAG_ACTIVITY_NO_ANIMATION 。 到目前为止,我还没有能够让这两个标志一起工作。 我尝试了以下方法: theIntent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION+Intent.FLAG_ACTIVITY_CLEAR_TOP); theIntent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION|Intent.FLAG_ACTIVITY_CLEAR_TOP); ` theIntent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); theIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 清除顶部适用于所有这些,但animation仍然存在。 任何帮助将不胜感激。

ActivityNotFoundException?

我在以下代码中收到ActivityNotFoundException : Main.java Intent intent = new Intent(); intent.setAction(“com.test.app.TEST”); startActivity(intent); // ActivityNotFoundException 的Manifest.xml

Android意图捕获图像和video?

是否有启动摄像头的Intent,可以选择在Android上捕获图片和video? 我已经使用了MediaStore.ACTION_VIDEO_CAPTURE和MediaStore.ACTION_IMAGE_CAPTURE来捕获音频或video,但我找不到可以在两者之间切换的Intent,就像在这个示例app中一样: 谢谢!

我是否从亚马逊app store获得INSTALL_REFERRER意图?

我找不到任何文档提到亚马逊app store是否会像Google Play一样发送推介Intent后安装。 虽然亚马逊的文档确实说我们可以在“ref”下的URL中设置引荐来源信息(与Google Play中的“引用者”相比),但它没有明确说明它们将如何传递给应用程序。 如果我确实收到了Intent ,我应该这样做 extras.getString(“ref”) 代替 extras.getString(“referrer”) ?