Code前端首页关于Code前端联系我们

Android开发中常用的工具和方法示例及应用技巧

terry 2年前 (2023-09-23) 阅读数 70 #移动小程序

Android开发中常用的工具和方法,特别包括使用示例、应用技巧、基础知识总结和注意事项,具有一定的参考价值,各位朋友需要他可以上诉。

我已经快一个月没有更新博客了。最近闲暇时间在写Flutter_WanAndroid项目和一个小程序。后续博文将会更新,呈现项目遇到的问题和解决方案。在这里我先分享一下Kotlin最近在企业项目中开发和使用的一些工具。

  • 打电话拍照
  • 打电话发短信
  • 启动系统权限设置页面
  • 启动应用商店
  • 使用WPS打开文件
  1. 打电话拍照
  2. 打电话发短信
 {
  var intent = Intent()
  intent.data = ("tel:${user!!.phone_number}")
  startActivity(intent)
}

 {
  var intent = Intent()
  intent.data = ("smsto:${user!!.phone_number}")
  ("sms_body", "")
  startActivity(intent)
}
  1. 启动系统权限设置页面
startActivityForResult(
   Intent()
       .setData(("package", packageName, null)),7534
)
  1. 启动应用市场
// 跳转应用市场下载 wps
var uri = ("market://details?id=")
var intent = Intent(Intent.ACTION_VIEW, uri)
if ((getPackageManager()) != null) {
    startActivity(intent)
} else {
    //要调起的应用不存在时的处理
    ("TAG","应用市场不存在,不能下载 WPS ")
}
  1. 使用WPS打开文件
fun openFile(context: Context, fileUrl: String?, fileType:String?): Boolean {
   if ("jpg".equals(fileType) || "jpeg".equals(fileType) || "gif".equals(fileType) || "png".equals(fileType)) {
       (context, "文件类型错误")
   } else {
       //检测是否安装了wps软件,没有安装则去下载
       if (isAvuliable(context, "")) {
           val intent = ().getLaunchIntentForPackage("")
           val bundle = Bundle()

           // 这里采用传入文档的在线地址进行打开,免除下载的步骤,也不需要判断安卓版本号
           ((fileUrl))
           s(bundle)
           (intent)

       } else {
           // 跳转应用市场下载 wps
           var uri = ("market://details?id=")
           var intent = Intent(Intent.ACTION_VIEW, uri)
           if ((()) != null) {
               (intent)
           } else {
               // 要调起的应用不存在时的处理
               (context, "请先下载 WPS 后再点击打开")
           }
       }
   }
   return true
}


private fun isAvuliable(context: Context, packageName: String): Boolean {
   var packageManager = context.packageManager
   var packageInfo = packageManager.getInstalledPackages(0)
    {
       if ((packageName, true)) {
           return true
       }
   }
   return false
}

ps:其实还有其他面向对象的语言,上手真的很快,尤其是使用Java基础。

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门