利用隐式意图打开各种文件和界面

本文详细介绍了如何在Android应用中利用隐式意图打开HTML、图片、PDF、文本文件以及系统界面,如辅助功能设置、电池信息、声音设置等。同时,也提供了打开拨号界面、联系人、图库和相机的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 打开HTML文件的intent

    Uri uri = Uri.parse(filePath).buildUpon().encodedAuthority("com.android.htmlfileprovider").scheme("content").encodedPath(param ).build();
    Intent intent = new Intent("android.intent.action.VIEW");
    intent.setDataAndType(uri, "text/html");

2 打开图片文件的intent

   Intent intent = new Intent("android.intent.action.VIEW");
   intent.addCategory("android.intent.category.DEFAULT");
   intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
   Uri uri = Uri.fromFile(new File(filePath));
   intent.setDataAndType(uri, "image/*");

3 用于打开PDF文件的intent

   Intent intent = new Intent("android.intent.action.VIEW");
   intent.addCategory("android.intent.category.DEFAULT");
   intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
   Uri uri = Uri.fromFile(new File(filePath));
   intent.setDataAndType(uri, "application/pdf");

4 打开文本文件的intent

    Intent intent = new Intent("android.intent.action.VIEW");
    intent.addCategory("android.intent.category.DEFAULT");
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    Uri uri1 = Uri.parse(filePath);
    intent.setDataAndType(uri1, "text/plain");
5 打开音频文件的intent

    Intent intent = new Intent("android.intent.action.VIEW");
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    intent.putExtra("oneshot", 0);
    intent.putExtra("configchange", 0);
    Uri uri = Uri.fromFile(new File(filePath ));
    intent.setDataAndType(uri, "audio/*");
6 打开视频文件的intent

    Intent intent = new Intent("android.intent.action.VIEW");
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    intent.putExtra("oneshot", 0);
    intent.putExtra("configchange", 0);
    Uri uri = Uri.fromFile(new File(filePath));
    intent.setDataAndType(uri, "video/*");
7 打开CHM文件的intent

    Intent intent = new Intent("android.intent.action.VIEW");
    intent.addCategory("android.intent.category.DEFAULT");
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    Uri uri = Uri.fromFile(new File(filePath));
    intent.setDataAndType(uri, "application/x-chm");

8打开Word文件的intent


    Intent intent = new Intent("android.intent.action.VIEW");
    intent.addCategory("android.intent.category.DEFAULT");
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    Uri uri = Uri.fromFile(new File(filePath));
    intent.setDataAndType(uri, "application/msword");
9 打开Excel文件的intent

    Intent intent = new Intent("android.intent.action.VIEW");
    intent.addCategory("android.intent.category.DEFAULT");
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    Uri uri = Uri.fromFile(new File(filePath));

    intent.setDataAndType(uri, "application/vnd.ms-excel");
10 打开PPT文件的intent

    Intent intent = new Intent("android.intent.action.VIEW");
    intent.addCategory("android.intent.category.DEFAULT");
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    Uri uri = Uri.fromFile(new File(filePath));
    intent.setDataAndType(uri, "application/vnd.ms-powerpoint");

11 打开拨号界面

    //方式一:
   Intent intent =new Intent();
   intent.setAction("android.intent.action.CALL_BUTTON"); 
   startActivity(intent);

   //方式二:
   Uri uri = Uri.parse("tel:xxxxxx"); 
   Intent intent = new Intent(Intent.ACTION_CALL, uri);   
   startActivity(intent);    

12  打开联系人

    //方式一:只打开界面
    Intent intent = new Intent(); 
    intent.setAction(Intent.ACTION_VIEW); 
    intent.setData(Contacts.People.CONTENT_URI); 
    startActivity(intent);

    //方式二:打开界面,并选择联系人
   Intent i = new Intent();  
   i.setAction(Intent.ACTION_GET_CONTENT);  
   i.setType("vnd.android.cursor.item/phone");  
   startActivityForResult(i, REQUEST_TEXT); 
   =============================== 
  
   Uri uri = Uri.parse("content://contacts/people");  
   Intent it = new Intent(Intent.ACTION_PICK, uri);  
   startActivityForResult(it, REQUEST_TEXT);   
   =============================== 

13打开“无线和网络设置”界面
  
    if(android.os.Build.VERSION.SDK_INT > 10 ){
          //3.0以上打开设置界面,也可以直接用ACTION_WIRELESS_SETTINGS打开到wifi界面
           startActivity(new Intent(android.provider.Settings.ACTION_SETTINGS));
      } else {
           startActivity(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS));
      }
 

经过测试,使用下面字段可以在软件中直接打开相应的系统界面

com.android.settings.AccessibilitySettings 辅助功能设置

com.android.settings.ActivityPicker 选择活动

com.android.settings.ApnSettings APN设置

com.android.settings.ApplicationSettings 应用程序设置

com.android.settings.BandMode 设置GSM/UMTS波段

com.android.settings.BatteryInfo 电池信息

com.android.settings.DateTimeSettings 日期和坝上旅游网时间设置

com.android.settings.DateTimeSettingsSetupWizard 日期和时间设置

com.android.settings.DevelopmentSettings 应用程序设置=》开发设置

com.android.settings.DeviceAdminSettings 设备管理器

com.android.settings.DeviceInfoSettings 关于手机

com.android.settings.Display 显示——设置显示字体大小及预览

com.android.settings.DisplaySettings 显示设置

com.android.settings.DockSettings 底座设置

com.android.settings.IccLockSettings SIM卡锁定设置

com.android.settings.InstalledAppDetails 安装app信息

com.android.settings.LanguageSettings 语言和键盘设置

com.android.settings.LocalePicker 选择手机语言

com.android.settings.LocalePickerInSetupWizard 选择手机语言

com.android.settings.MediaFormat 格式化手机闪存

com.android.settings.PhysicalKeyboardSettings 设置键盘

com.android.settings.PrivacySettings 隐私设置

com.android.settings.ProxySelector 代理设置

com.android.settings.RadioInfo 手机信息

com.android.settings.RunningServices 正在运行的程序(服务)

com.android.settings.SecuritySettings 位置和安全设置

com.android.settings.Settings 系统设置

com.android.settings.SettingsSafetyLegalActivity 安全信息

com.android.settings.SoundSettings 声音设置

com.android.settings.TestingSettings 测试——显示手机信息、电池信息、使用情况统计、Wifi information、服务信息

com.android.settings.TetherSettings 绑定与便携式热点

com.android.settings.TextToSpeechSettings 文字转语音设置

com.android.settings.UsageStats 使用情况统计

com.android.settings.UserDictionarySettings 用户词典

com.android.settings.VoiceInputOutputSettings 语音输入与输出设置

com.android.settings.WirelessSettings 无线和网络设置


14.打开图库选择图片

    Intent intent = new Intent(Intent.ACTION_GET_CONTENT); 
    intent.addCategory(Intent.CATEGORY_OPENABLE);
    intent.setType("image/*");
    startActivityForResult(intent, 0); 

15 打开相机

    Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    intent.putExtra(MediaStore.EXTRA_OUTPUT,  
    //存放位置为sdcard卡上<span style="font-family:宋体;">ilmare</span>文件夹,文件名为<span style="font-family:宋体;">photo</span>.jpg格式
    Uri.fromFile(new File(Environment .getExternalStorageDirectory().getAbsolutePath()+"/<span style="font-family:宋体;">ilmare</span>", <span style="font-family:宋体;">photo</span>+ ".jpg")));
    startActivityForResult(intent, 0);   

16 打开录音机

    Intent mi = new Intent(Media.RECORD_SOUND_ACTION); 
    startActivity(mi);

17.uninstall apk
    Uri uri = Uri.fromParts("package", strPackageName, null);   
    Intent it = new Intent(Intent.ACTION_DELETE, uri);   
    startActivity(it);  

18.install apk
    Uri installUri = Uri.fromParts("package", "xxx", null); 
    returnIt = new Intent(Intent.ACTION_PACKAGE_ADDED, installUri);  
    startActivity(returnIt );  













评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值