Tag: android intent

广播接收器在应用程序类android中

我正在注册应用程序类中的BroadcastReceiver ,并且其注册方法在应用程序启动过程中被调用并成功完成而没有问题。 我正在从模块发送广播。 我可以打印行动,它在那里。 但该应用程序不捕捉广播。 我不知道我在做什么错。 以下是注册接收方的方法。 fun registerRecordingDataReceiver () { info("AppReceiver register called=>${CommonsDataVars.TEMPERATURE.action()}") val temperatureCompleted = CommonsDataVars.TEMPERATURE.action() val temperatureCompletedIntentFilter = IntentFilter(temperatureCompleted) val broadcastManager = LocalBroadcastManager.getInstance(this) broadcastManager.registerReceiver(appReceiver,temperatureCompletedIntentFilter) info("AppREceiver register completed") } 广播接收机的一部分 override fun onReceive(context: Context?, intent: Intent?) { val action = intent?.getAction() debug("Action in App Receiver =>"+action) if (action == CommonsDataVars.TEMPERATURE.action()) { info("AppReceiver****************************************") sendBroadcast部分: […]

通过Android意图传递HashMap

我有一个HashMap(String,HashMap(String,Object))在我的一个活动。 我如何通过意图发送这个HashMap到另一个活动 如何将这个HashMap添加到intent extras中?

来自内部存储的Intent.ACTION_SEND PDF文件仅适用于某些应用程序

我尝试从Intent.ACTION_SEND发送到PrinterShare应用程序(我已经购买了声称可以从应用程序内部存储打印文件的高级版本),从应用程序的内部存储器打印PDF文件。 我已经看了这个 , 这是复制我的文件到内部缓存感谢这一点 ,似乎PrinterShare应用程序获取我的文件,但不是“完全” – 它无法呈现文件,当我打印,它只是推出一个空的文件。 随着共享意图,我可以选择其他应用程序,如Gmail和普通的蓝牙,然后我可以发送PDF文件作为电子邮件附件或通过蓝牙到我的个人电话,它完美呈现。 只是当我尝试将其分享到Google照片,环聊,然后还有PrinterShare应用时,出现了一些奇怪的错误。 那么,如何调试一个只发生在有时候的问题呢? 在我的代码之前,我在内部存储中创建文件,如下所示: val savePdf = File(view.filesDir, "printthis.pdf") 这是我的共享意图建设(Kotlin): override fun printPdf() { copyFileToInternal() val uri = Uri.parse("content://my.package.android.app/printthis.pdf") Log.d("Print PDF from $uri") val shareIntent = Intent(Intent.ACTION_SEND) shareIntent.type = "image/*" shareIntent.flags = Intent.FLAG_GRANT_READ_URI_PERMISSION shareIntent.putExtra(Intent.EXTRA_STREAM, uri) (view as Context).startActivity(Intent.createChooser(shareIntent, "Print PDF")) } 这是copyFileToInternal函数: private fun copyFileToInternal() { try { […]

如何在android中共享文件

我创建了一个应用程序,将发送一个文件使用行动发送,一小时后我的代码不起作用。 当它打开另一个应用程序时,我得到一个错误“传输这样的内容类型不支持”shareIt和蓝牙文件iamafile没有发送到…这是我的代码,我试了很多代码,但不工作。 请帮助 File root = new File(Environment.getExternalStorageDirectory(), "/QuizApp/MyAnswer/"+sharedPreferenceUsername +"/"+ editTitle); Uri uri = Uri.fromFile(root); Intent intent = new Intent(); intent.setAction(Intent.ACTION_SEND); intent.setType("*/*"); intent.putExtra(Intent.EXTRA_STREAM, uri); startActivity(intent); 顺便说一句editTitle是一个文件。

以编程方式安装/卸载APK(PackageManager vs Intents)

我的应用程序安装了其他应用程序,并且需要跟踪它安装的应用程序。 当然,这可以通过简单地保存已安装应用程序的列表来实现。 但是这不应该是必要的! PackageManager负责维护installedBy(a,b)关系。 实际上,根据API,它是: public abstract String getInstallerPackageName (String packageName) – 检索安装包的应用程序的包名称。 这标识了包装来自哪个市场。 目前的做法 使用意图安装APK Intent intent = new Intent(Intent.ACTION_VIEW); intent.setDataAndType(apkUri, "application/vnd.android.package-archive"); startActivity(intent); 使用Intent卸载APK: Intent intent = new Intent(Intent.ACTION_DELETE, Uri.fromParts("package", getPackageManager().getPackageArchiveInfo(apkUri.getPath(), 0).packageName,null)); startActivity(intent); 这显然不是Android Market安装/卸载软件包的方式。 他们使用更丰富的PackageManager版本。 这可以通过从Android Git存储库下载Android源代码来看到。 以下是对应于Intent方法的两个隐藏方法。 不幸的是,它们不适用于外部开发者。 但也许他们会在未来? 更好的方法 使用PackageManager安装APK /** * @hide * * Install a package. Since this may […]

当imageuri作为额外的传递时,Espresso测试相机意图

我需要通过在意图额外提供的路径创建一个图像文件存根相机意图。 意式浓缩咖啡只能以活动结果回应。 我在哪里可以执行操作来创建文件在传递路径从意图额外。 代码启动相机 File destination = new File(Environment.getExternalStorageDirectory(), "app_name" + System.currentTimeMillis() + ".jpg"); imageUri = FileProvider.getUriForFile(getApplicationContext(),getApplicationContext()。getPackageName()+“.fileprovider”,destination); Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); intent.putExtra(MediaStore.EXTRA_OUTPUT,imageUri); startActivityForResult(intent,AppConstants.REQUEST_CODE_CAMERA); 代码测试中的stubbing意图 Instrumentation.ActivityResult result = new Instrumentation.ActivityResult(Activity.RESULT_OK, null); intending(hasAction(MediaStore.ACTION_IMAGE_CAPTURE)).respondWith(result);

将预先计算的结果从一个Kotlin活动发送到另一个文本视图

我目前正在计算我的主要活动。 计算在下面的函数中完成。 结果显示在同一屏幕上的文本框中。 ShowNumber.setText(buClickValue) Bill = buClickValue fun buCalculateEvent(view: View) { var Total = "%.2f".format(Bill.toDouble() * .15) ShowNumber.setText("Based on a 15% tip, you would be " + ( Bill.toDouble() + Total.toDouble())) } 我的问题是试图让setText消息出现在另一个活动。 我知道如何通过点击一个按钮访问活动。 我也知道如何在另一个活动中生成吐司消息。 我怎样才能将信息发送到另一个活动的文本视图? 提前致谢。

在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); 清除顶部正确的工作,但动画仍然存在。 任何帮助将不胜感激。

如何在Android应用程序中的活动之间传递数据?

我有一个场景,通过登录页面登录后,每个activity都会有一个注销button 。 在点击登出时,我会传递登录用户的session id来注销。 任何人都可以指导我如何保持session id可用于所有activities ? 任何替代这种情况

Android 4.4(KitKat)上的Android图库为Intent.ACTION_GET_CONTENT返回不同的URI

在KitKat之前(或在新的图库之前), Intent.ACTION_GET_CONTENT返回一个这样的URI 内容://媒体/外部/图像/媒体/ 3951。 使用ContentResolver并为MediaStore.Images.Media.DATA返回文件的URL。 在KitKat中,Gallery会返回一个URI(通过“Last”),如下所示: 内容://com.android.providers.media.documents/document/image:3951 我该如何处理?