Articles of android intent

如何知道在Intent.ACTION_SEND中选择了哪个意图?

我想使用Android Intent.ACTION_SEND快速分享内容。 所以我有一个像这样的共享列表: 但我希望为每个操作分享不同的内容,例如: 如果通过电子邮件/ Gmail共享,内容应为“通过电子邮件分享”。 如果通过Facebook分享,内容应该是“通过Facebook分享”。 那么,有可能这样做吗?

可以使用地图和waze的导航意图

我正在尝试从我的应用程序启动导航活动。 我希望它从我的位置开始导航到我提供的点。 我试过这种方式 String uri = “geo: “+String.valueOf(latitude) + “,” + String.valueOf(longitude); context.startActivity(new Intent(android.content.Intent.ACTION_VIEW, Uri.parse(uri))); 当我选择使用Waze导航时它很有效(它立即从“开始导航”对话框开始),但不适用于maps (仅显示点,而不是导航选项) 如果我用这种方式 Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(“http://maps.google.com/maps?” + “&daddr=” + String.valueOf(latitude) + “,” + String.valueOf(longitude))); context.startActivity(intent); 相反,用maps开始导航,只显示Waze点 谢谢!

如何从共享菜单中排除自己的应用程序?

该应用程序有一个intentfilter,允许它通过ACTION_SEND意图出现在其他应用程序的共享菜单中。 该应用程序本身也有一个使用ACTION_SEND和createChooser()的共享菜单,我的应用程序出现在列表中。 由于它们已经在我的应用程序中,让它们能够与自己分享回来似乎很奇怪。 如果从我的应用程序调用它,我的应用程序是否有办法不显示在列表中?

SecurityException:来自Google Analytics(分析)代码的Parcel.readException

我们的应用程序从崩溃报告软件中获取了不同的SecurityException报告。 这是崩溃的堆栈跟踪: java.lang.SecurityException: Unable to find app for caller android.app.ApplicationThreadProxy@43fda840 (pid=17925) when registering receiver android.content.IIntentReceiver$Stub$Proxy@43fd9458 at android.os.Parcel.readException(Parcel.java:1431) at android.os.Parcel.readException(Parcel.java:1385) at android.app.ActivityManagerProxy.registerReceiver(ActivityManagerNative.java:2466) at android.app.ContextImpl.registerReceiverInternal(ContextImpl.java:1717) at android.app.ContextImpl.registerReceiver(ContextImpl.java:1685) at android.app.ContextImpl.registerReceiver(ContextImpl.java:1679) at android.content.ContextWrapper.registerReceiver(ContextWrapper.java:453) at com.google.android.gms.analytics.qv(Unknown Source) at com.google.android.gms.analytics.r.cF(Unknown Source) at com.google.android.gms.analytics.r.cH(Unknown Source) at com.google.android.gms.analytics.s.cO(Unknown Source) at com.google.android.gms.analytics.s.cP(Unknown Source) at com.google.android.gms.analytics.sd(Unknown Source) at com.google.android.gms.analytics.s$e.run(Unknown Source) at java.util.Timer$TimerImpl.run(Timer.java:284) 堆栈跟踪始终是相同的,除了唯一似乎改变的是android.app.ApplicationThreadProxy@41da9030 (pid=9103)和android.content.IIntentReceiver$Stub$Proxy@41ee0688有不同的数字(是这个主题) id’s或什么?) […]

在Facebook上分享得分android

我想在Facebook上分享我的游戏分数。 我检查了很多链接,每个post的人都说使用INTENT在facebook上发帖是不可能的 。如果我们使用的意图比我们只能共享链接 。 如果我们必须在Facebook上分享一些东西,那么我们必须使用FaceBook SDK 。 我怀疑所有问题和答案都是在2014年之前发布的。 2014年之后是否有新事物发生 。 我的实际问题是,是否可以使用Intent在Facebook上分享分数 ,或者我必须使用Facebook SDK ? 下面是我用于我的应用程序的意图代码,它不起作用…… Intent intent = new Intent(Intent.ACTION_SEND); intent.setType(“text/plain”); intent.putExtra(Intent.EXTRA_TEXT, message); startActivity(Intent.createChooser(intent, “Share on”)); 以下是FacebookSDK代码…并且问题在于它没有显示 仅发布链接图像上的分数 ,并且缺少标题和描述 。 FacebookSdk.sdkInitialize(getApplicationContext()); shareDialog = new ShareDialog(this); if (ShareDialog.canShow(ShareLinkContent.class)) { linkContent = new ShareLinkContent.Builder() .setContentTitle(title) .setContentDescription(description) .setContentUrl(Uri.parse(link)). .setImageUrl(Uri.parse(imageLink) .build(); shareDialog.show(linkContent); } 我使用ShareDialog是因为 “共享”对话框切换到原生Facebook for Android应用程序,然后在发布post后将控制权返回给您的应用程序。 如果未安装Facebook应用程序,它将自动回退到基于Web的对话框。 以下是输出………. […]

如何在Android中以编程方式将图像文件从库复制到另一个文件夹

我想从Gallery中选择图像并将其复制到SDCard中的其他文件夹中。 从图库中选择图像的代码 Intent photoPickerIntent = new Intent(Intent.ACTION_PICK); photoPickerIntent.setType(“image/*”); startActivityForResult(photoPickerIntent, REQUEST_CODE_CHOOSE_PICTURE_FROM_GALLARY); 我得到content://media/external/images/media/681这个URI onActivityResult。 我想复制图片, 表格path =”content://media/external/images/media/681 to path = “file:///mnt/sdcard/sharedresources/ Android中的sdcard路径。 这个怎么做?

关注Honeycomb或更高版本Android版本的外部USB存储器的更改

我有一台运行Android Honeycomb的数码单反相机和三星Galaxy Tab。 使用USB电缆将DSLR连接到平板电脑(通过USB套件在平板电脑上启用主机function)。 我希望在用户使用此外置摄像头拍照时收到通知,以便将此图像下载到平板电脑或使用它执行其他操作,例如显示包含从图像中获取的元信息的Toast通知。 至于我获得所有现有工具(如FileObserver使用底层inotify机制, MediaContentProvider等)允许监视更改,需要特定文件或文件系统路径进行监视。 这很好,直到我们在2.x和更早版本的Android版本中获得了块层协议支持 – 当你连接设备时,它已安装在设备文件系统的某个地方,你可以使用这个挂载点作为这些工具的观察点。 由于Honeycomb Google已经将使用PTP作为其子集的外部USB设备访问Media Transfer Protocol的方式改变了。 现在,当我将外部USB设备连接到Android设备时,我将看不到任何挂载点(我正在使用adb shell和后续的mount命令来获取它们)。 此外, MTP实现使用存储ID,它显然充当更高级别的抽象,并且只是普通的整数值。 我希望有一种方法能够以某种方式将这些存储ID转换为真正的路径/ mountpoint /无论如何,但显然似乎没有。 考虑到已经在我的设备上运行的Android MediaScanner ,我猜想当设备可以访问媒体文件的变化时,可以通过广播的特殊Intent来管理这个问题,所以我开始寻找已经存在且适合的Intents来获得通知,但没有运气 – 我发现只有ACTION_MEDIA_MOUNTED和ACTION_MEDIA_REMOVED才会在设备分别连接和断开时进行广播。 这意味着MediaScanner无法注意到设备上的任何更改,直到您重新安装它(我已使用库存图库应用程序对其进行了双重检查 – 在您拔下插头并将其插入Android之前,它不会在相机上看到任何新创建的图像设备再次)。 试图获取外部sdcard的这个挂载路径,我使用了Environment.getExternalStorageDirectory() API调用,但它产生了模拟的Galaxy的sdcard路径,即/mnt/sdcard ,而不是摄像机的路径。 所以它对我也不起作用。 我设法解决了这个问题,只是在AsyncTask充当TimerTask启动了定期的Timer事件。 此任务会初始化USB连接,打开设备,扫描整个设备内存,仅获取最后拍摄的照片,然后关闭设备描述符和USB连接。 它看起来不是最好和最有效的方式,考虑到它必须每次都做这些动作,这可能是经常发生的,比如说每5秒或10秒。 它肯定会很快耗尽电池并产生不必要的系统I / O,仅用于拍摄最后拍摄的照片并将其与之前拍摄的照片进行比较(99%它是相同的图像),但我还没有find任何更好的工作解决方案这样做。 拥有基于事件的通知的观察者机制会好得多。 所以我的问题是有更高效的方式来通知Honeycomb或更高版本的Android版本的外部USB存储器的更改而不是上面描述的那些?

Android:在ACTION_SHUTDOWN事件之前关闭网络电台。事件订单在ICS中更改

当用户在设备上关闭电源时,我正在向我的服务器发送注销.2.3 和4.0.3中的事件顺序如下。现在注销失败。 设备: 三星Galaxy s2 Android:2.3 1)接收ACTION_SHUTDOWN 2)发送退出事件,睡眠5秒, LOG OUT SENT SUCCESSFULLY 3)数据网络无线电关闭事件。 4)设备电源关闭。 Android:4.0.3 1)数据网络无线电关闭事件。 2)接收ACTION_SHUTDOWN 3)发送注销事件, LOG OUT FAIL As Network down 。 在数据网络无线电关闭之前,有什么方法可以获得ACTION_SHUTDOWN吗?

与服务中的活动(LocalService)进行通信 – Android最佳实践

常见方案 – 具有后台服务的活动用于轮询服务器。 该服务将通过AlarmManager定期运行,并执行活动任务(用户点击按钮,从服务器获取内容)。 我想知道这里的最佳做法。 我认为最好的设计是Android LocalService示例: http : //developer.android.com/reference/android/app/Service.html#LocalServiceSample 但是在示例中,Activity具有对活动mBoundService的引用,但没有反向连接( Service无法调用Activity )。 服务调用活动的最佳方式是什么? 我是否使用Intents,BroadcastReceivers,Messages? 怎么样?

如何在android中水平和垂直滚动表格布局

我在表格布局滚动中完全糊涂了。 我必须实现水平和垂直滚动表。 我也看到了表修复标题示例,但tablefixheader示例使用了适配器来设置数据,但我需要在表格布局中添加视图方法。 我使用下面的代码,但它不支持两种方式滚动