Articles of android intent

检查意图uri是否可用

我有一个有时链接到imdb的应用程序。 我可以使用http://m.imdb.com/find执行此操作,或者如果可以使用imdb:///find 。 我的麻烦是我无法find一种方法来检查imdb://是否可用,为时已晚。 因为用户点击了链接,所以我无法捕获android.content.ActivityNotFoundExceptionexception。 我错过了一些明显的东西吗 解: 根据inazaruk的建议,我现在正在使用以下代码: public static boolean isUriAvailable(Context context, String uri) { Intent test = new Intent(Intent.ACTION_VIEW, Uri.parse(uri)); return context.getPackageManager().resolveActivity(test, 0) != null; } 必须使用直接uri来调用该方法,例如imdb:///find而不仅仅是imdb:// 。

为何使用开始活动?

我一直在查看API文档,并注意到从API级别16开始, Context类包括以下方法: public abstract void startActivities (Intent[] intents) 我一直在谷歌搜索,试图通过在应用程序代码,问题或文章中使用它的例子来expression我的好奇心,但我还没有遇到过任何问题。 如果有人问过类似的问题,请告诉我。 无论如何,我很好奇何时应该/可以在应用程序代码中使用,以及这样做会带来什么(如果有的话)? 我个人从来没有见过这种方法,我没有把握它的实用性。 任何反馈将不胜感激。

在短信上点击链接时启动Android应用程序

我不知道是否有很多人试过这个,但我正在尝试构建一个应用程序,要求用户点击他/她收到的短信链接,这将启动Android应用程序。 在android中有可能吗? 如果是,我该怎么做? 我知道这可以在IOS中完成。 任何建议或帮助将不胜感激。 谢谢。

什么是Android中的Uri.parse

Uri的function是什么? Uri.parse()是如何使用的? 例如 : Uri.parse(“tel:(+49)12345789”)); 和 Uri.parse(“geo:50.123,7.1434?z=19”)); tel和geo是指什么?

Android中的蓝牙设备发现 – startDiscovery()

目标:构建一个Android应用程序,发现范围内BT设备的名称和地址,并将其值提交给Web服务。 以前没有将BT设备绑定到主机设备上,我只想在我走动时查看所有内容。 我做了什么: 仔细阅读文档。 实现了主机设备的BT适配器的本地实例。 如果未启用BT,则实施启用BT的通知。 注册的广播接收者和意图来解析startDiscovery()的ACTION_FOUND 。 清单中注册的BLUETOOTH和BLUETOOTH_ADMIN权限。 在startDiscovery()之前一切正常(通过增量控制台日志记录测试startDiscovery() 。 挫折: startDiscovery() – 我怀疑我在错误的上下文中传递了这个。 该方法需要在什么上下文中才能正常运行? 如果你能够使用这种方法,我将非常感谢你的智慧。 更新 – 这是一个简化的代码简化版本,让我感到悲伤; 这种简化概括了我的错误。 这段代码运行,它不会抛出cat.log错误或其他错误,它根本不提供任何输出。 package aqu.bttest; import android.app.Activity; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.Bundle; import android.widget.Toast; public class BT2Activity extends Activity { private BluetoothAdapter mBTA; private SingBroadcastReceiver mReceiver; /** […]

从Fragment调用startActivityForResult不会调用onActivityResult

我有一个DialogActivity ,它从Fragment调用,用于显示带有两个图像按钮的自定义Dialog 。 在DialogActivity.onCreate final Dialog dialog = new Dialog(this, R.style.DialogTheme); dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); dialog.setContentView(R.layout.dialog_pause); dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); dialog.show(); 在DialogActivity.onClick @Override public void onClick(View v) { Log.d(LOGTAG, “onClick CONTINUE”); Intent resultData = new Intent(); resultData.putExtra(“TEST”, “return data”); setResult(666, resultData); dialog.cancel(); } 在Fragment中调用startActivityForResult : Intent dialogActivityIntent = new Intent(getActivity(), DialogActivity.class); startActivityForResult(dialogActivityIntent, 999); 在调用startActivityForResult Activity和Fragment中: @Override public void onActivityResult(int requestCode, […]

data.getExtras()。get(“data”)android中低分辨率图像的结果

在我的应用程序中,我从相机拍摄照片,然后我得到该图片在相同的图片上做一些image processing操作,但当我得到这个图片与data.getExtras()。get(“数据”),图片来了低分辨率而不是真正的决议。 问题的原因是什么? 代码就是这样; Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(intent , CAMERA_PIC_REQUEST); } protected void onActivityResult(int requestCode , int resultCode , Intent data ) { if( requestCode != 0) { ImageView image = (ImageView)findViewById(R.id.imageView1); thumbnail = (Bitmap)data.getExtras().get(“data”);

注册成为自定义文件types的默认应用程序

注册即可打开自定义types的文件。 假设我有.cool文件,如果用户试图打开它,Android会询问他们是否愿意使用我的应用程序打开它。 怎么样?

Android:如果从Recent Task启动应用程序,则Activity正在使用旧意图

我正在实施GCM。 我的应用程序有两个活动,比如A和B 我正在使用此代码从NotificationBar启动B : long when = System.currentTimeMillis(); NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); String title = context.getString(R.string.app_name); Notification notification = new Notification(R.drawable.app_notification_icon, “De Centrale”, when);//message Intent notificationIntent = new Intent(context, B.class); notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); //|Intent.FLAG_ACTIVITY_REORDER_TO_FRONT PendingIntent intent = PendingIntent.getActivity(context, 0, notificationIntent, PendingIntent.FLAG_CANCEL_CURRENT); notification.setLatestEventInfo(context, title, msg, intent); notification.flags |= Notification.FLAG_AUTO_CANCEL; notificationManager.notify(0, notification); NotificationBar打开带有Intent的Activity B ,比如’B-notification-intent’,然后我使用Back按钮从B打开Activity A […]

为什么我的可搜索活动的Intent.getAction()为null?

我已经按照SearchManager文档进行了操作,但仍然无法搜索我的应用程序的某个活动。 从我的活动,出现搜索对话框,我输入查询,点击搜索,我的活动重新打开,然后我在日志中看到这个: D/SearchDialog( 584): launching Intent { act=android.intent.action.SEARCH flg=0x10000000 cmp=com.clinkybot.geodroid2/.views.Waypoints (has extras) } I/SearchDialog( 584): Starting (as ourselves) #Intent;action=android.intent.action.SEARCH;launchFlags=0x10000000;component=com.clinkybot.geodroid2/.views.Waypoints;S.user_query=sdaf;S.query=sdaf;end I/ActivityManager( 584): Starting activity: Intent { act=android.intent.action.SEARCH flg=0x10000000 cmp=com.clinkybot.geodroid2/.views.Waypoints (has extras) } D/WAYPOINTS( 1018): NI Intent { cmp=com.clinkybot.geodroid2/.views.Waypoints (has extras) } D/WAYPOINTS( 1018): NI null D/WAYPOINTS( 1018): NI false 在我看来,直到最后三行,一切都很好。 “NI”行分别是getIntent().toString(), getIntent().getAction()和getIntent().hasExtra(SearchManager.QUERY) 。 ActivityManager似乎正在以正确的操作启动我的活动。 然后当我的活动开始时,它不包含任何动作!? 我究竟做错了什么? […]