Intent
应该算是Android中特有的东西。你可以在Intent中指定程序 要执行的动作(比如:view,edit,dial),以及程序执行到该动作时所需要的资料 。都指定好后,只要调用startActivity(),Android系统 会自动寻找最符合你指定要求的应用 程序,并执行该程序。
下面列出几种Intent 的用法
显示网页:
Uri uri = Uri.parse("http://www.google.com");
Intent it = new Intent(Intent.ACTION_VIEW,uri);
startActivity(it);
显示地图:
Uri uri = Uri.parse("geo:38.899533,-77.036476");
Intent it = new Intent(Intent.Action_VIEW,uri);
startActivity(it);
路径规划:
Uri uri = Uri.parse("http://maps.google.com/maps?f=dsaddr=startLat%20startLng&daddr=endLat%20endLng&hl=en");
Intent it = new Intent(Intent.ACTION_VIEW,URI);
startActivity(it);
拨打电话:
调用拨号程序
Uri uri = Uri.parse("tel:xxxxxx");
Intent it = new Intent(Intent.ACTION_DIAL, uri);
startActivity(it);
Uri uri = Uri.parse("tel.xxxxxx");
Intent it =new Intent(Intent.ACTION_CALL,uri);
要使用这个必须在配置文件 中加入<uses-permission id="android .permission.CALL_PHONE" />
发送SMS/MMS
调用发送短信 的程序
Intent it = new Intent(Intent.ACTION_VIEW);
it.putExtra("sms_body", "The SMS text");
it.setType("vnd.android-dir/mms-sms");
startActivity(it);
发送短信
Uri uri = Uri.parse("smsto:0800000123");
Intent it = new Intent(Intent.ACTION_SENDTO, uri);
it.putExtra("sms_body", "The SMS text");
startActivity(it);
发送彩信
Uri uri = Uri.parse("content://media/external/images/media/23");
Intent it = new Intent(Intent.ACTION_SEND);
it.putExtra("sms_body", "some text");
it.putExtra(Intent.EXTRA_STREAM, uri);
it.setType("image/png");
startActivity(it);
发送Email
Uri uri = Uri.parse("mailto:xxx@abc.com");
Intent it = new Intent(Intent.ACTION_SENDTO, uri);
startActivity(it);
Intent it = new Intent(Intent.ACTION_SEND);
it.putExtra(Intent.EXTRA_EMAIL, "me@abc.com");
it.putExtra(Intent.EXTRA_TEXT, "The email body text");
it.setType("text/plain");
startActivity(Intent.createChooser(it, "Choose Email Client"));
Intent it=new Intent(Intent.ACTION_SEND);
String[] tos={"me@abc.com"};
String[] ccs={"you@abc.com"};
it.putExtra(Intent.EXTRA_EMAIL, tos);
it.putExtra(Intent.EXTRA_CC, ccs);
it.putExtra(Intent.EXTRA_TEXT, "The email body text");
it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");
it.setType("message/rfc822");
startActivity(Intent.createChooser(it, "Choose Email Client"));
添加附件
Intent it = new Intent(Intent.ACTION_SEND);
it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");
it.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/mysong.mp3");
sendIntent.setType("audio/mp3");
startActivity(Intent.createChooser(it, "Choose Email Client"));
播放 多媒体
Intent it = new Intent(Intent.ACTION_VIEW);
Uri uri = Uri.parse("file:///sdcard/song.mp3");
it.setDataAndType(uri, "audio/mp3");
startActivity(it);
Uri uri = Uri.withAppendedPath(MediaStore.Audio.Media.INTERNAL_CONTENT_URI, "1");
Intent it = new Intent(Intent.ACTION_VIEW, uri);
startActivity(it);
Uninstall 程序
Uri uri = Uri.fromParts("package", strPackageName, null);
Intent it = new Intent(Intent.ACTION_DELETE, uri);
startActivity(it);
uninstall apk
Uri uninstallUri = Uri.fromParts("package", "xxx", null);
returnIt = new Intent(Intent.ACTION_DELETE, uninstallUri);
install apk
Uri installUri = Uri.fromParts("package", "xxx", null);
returnIt = new Intent(Intent.ACTION_PACKAGE_ADDED, installUri);
play audio
Uri playUri = Uri.parse("file:///sdcard/download/everything.mp3");
returnIt = new Intent(Intent.ACTION_VIEW, playUri);
//发送附件
Intent it = new Intent(Intent.ACTION_SEND);
it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");
it.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/eoe.mp3");
sendIntent.setType("audio/mp3");
startActivity(Intent.createChooser(it, "Choose Email Client"));
//搜索应用
Uri uri = Uri.parse("market://search?q=pname:pkg_name");
Intent it = new Intent(Intent.ACTION_VIEW, uri);
startActivity(it);
//where pkg_name is the full package path for an application
//显示指定应用的详细页面(这个好像不支持了,找不到app_id)
Uri uri = Uri.parse("market://details?id=app_id");
Intent it = new Intent(Intent.ACTION_VIEW, uri);
startActivity(it);
//where app_id is the application ID, find the ID
//by clicking on your application on Market home
//page, and notice the ID from the address bar
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/Android_Tutor/archive/2009/12/09/4974380.aspx
分享到:
相关推荐
总的来说,通过学习这个"简易安卓备忘录"项目,初学者不仅可以掌握Java语言的基本用法,还能了解到Android应用的开发流程,包括UI设计、数据库操作、用户交互处理等关键环节。对于进一步提升Android开发技能,这是一...
- **功能实现**:编写相关方法,如输入验证、提醒设置、数据同步等。 - **测试与调试**:在模拟器或真机上进行测试,使用Logcat查看日志,找出并修复问题。 - **发布准备**:生成APK文件,进行签名和优化,准备上传...
在备忘录应用中,可能会使用隐式Intent启动新的Activity,或者使用BroadcastReceiver监听系统事件(如开机、网络状态变化等),以触发备忘录同步等操作。 6. **通知(Notification)**:为了提醒用户,备忘录应用...
这些功能的实现涉及到Activity和Fragment的生命周期管理,以及Intent的使用来在不同界面间传递数据。例如,当用户点击添加按钮时,启动一个新的Activity或Fragment,用户填写完信息后,将数据通过Intent传递回主界面...
在这个项目中,可能使用Intent在不同Activity间传递信息,比如从主界面跳转到编辑界面时携带备忘录ID。 8. **生命周期管理**:每个Activity都有自己的生命周期,开发者需要理解并适当地处理onCreate(), onStart(), ...
- **事件处理**:监听用户的触摸事件,例如点击按钮设置闹钟,这需要在Java或Kotlin代码中添加OnClickListener,并实现相应的回调方法。 - **AlarmManager**:这是Android系统服务,用于安排在未来某一时刻启动...
3. **数据存储**:为了保存用户的备忘录,源码可能使用SQLite数据库或者SharedPreferences。SQLite是安卓中的轻量级数据库,适合存储结构化的数据,而SharedPreferences则用于存储简单的键值对,适用于小量非结构化...
开发者需要熟悉Activity、Intent、BroadcastReceiver、Service等核心组件的用法。在这个备忘录应用中,Activity可能被用来展示备忘录的列表和编辑界面,Intent用于启动或传递数据,BroadcastReceiver可以用于接收...
UI设计应遵循Material Design指南,使用布局如RecyclerView展示备忘录列表,使用EditText和DatePicker/TimePicker组合来设定提醒时间。 数据存储是备忘录应用的核心部分。Android提供了SQLite数据库来存储结构化...
在备忘录应用中,创建新备忘录或编辑现有备忘录可能需要通过Intent来启动新的Activity。 7. **SharedPreferences**:对于简单的数据存储,例如用户的偏好设置,可以使用SharedPreferences。这可能用于存储用户是否...
在Android开发中,创建一个简单的备忘录应用是学习移动应用编程的好方法。"个人写的一个简单备忘录"这个项目可能就是一个初学者尝试构建的此类应用,旨在帮助其他新手理解基本的Android编程概念,尤其是如何结合...
总结,创建一个具有数据库存储和定时提醒功能的Android备忘录应用涉及的主要技术点有:SQLite数据库的使用、数据模型设计、SQLite数据库操作、BroadcastReceiver和AlarmManager的配合以实现定时提醒,以及可选的...
3. **BroadcastReceiver**: 当闹钟时间到达时,系统会广播一个意图(Intent),此时需要一个`BroadcastReceiver`来接收这个意图并执行相应的动作,如播放铃声、显示通知或者启动一个Activity展示备忘录详情。...
此外,我们还可以通过Intent传递数据,如在备忘录应用中,可能需要在页面间传递备忘录的标题和内容。这可以通过putExtra()方法实现: ```java intent.putExtra("title", title); intent.putExtra("content", ...
在创建备忘录应用时,我们通常会使用精确闹钟,确保用户能准时收到提醒。 在应用的实现过程中,首先需要创建一个备忘录模型类,包含备忘录的标题、内容、设定时间等属性。接着,用户可以通过UI界面输入这些信息并...
这利用了Android的Intent系统,创建ACTION_SEND类型的Intent,指定分享的文本内容,并调用startActivityForResult方法启动分享。 6. **用户界面**:应用应提供简洁易用的界面,可能包含列表视图(ListView或...
在Android开发中,创建一个简易备忘录应用是学习移动应用编程的好方法,尤其是在使用Eclipse集成开发环境时。这个过程涉及到多个关键知识点,包括UI设计、数据存储、事件监听和用户交互。以下是对这些知识点的详细...
为了实现定时任务,开发者会使用AlarmManager或者JobScheduler API,根据应用的需求选择最适合的方法来设置定时器。 关于Notification,这是Android系统提供的一种通知机制,允许应用在状态栏显示提醒,即使用户...
5. **Intent机制**:Intent在Android中用于启动或通信,备忘录应用中可能使用Intent来启动新的Activity,传递数据,或者启动Service等。 6. **通知与提醒**:如果备忘录应用包含提醒功能,那么可能会涉及到...
我们可以使用它来设置闹钟,在指定的时间触发一个Intent。AlarmManager支持不同类型的触发方式,如精确触发(ELAPSED_REALTIME_WAKEUP)或基于时间的触发(RTC_WAKEUP)。 3. **PendingIntent**: 闹钟触发时需要...