【问题标题】:What is the activity class name of the Android native phone app dial activity?Android原生手机app拨号Activity的Activity类名是什么?
【发布时间】:2014-07-15 02:50:42
【问题描述】:

我正在使用 App Inventor for Android 开发一个应用程序。

我想通过单击按钮打开我的 Android 手机的本机手机应用程序。我尝试在this tutorial 中执行类似的操作,通过单击列表项打开 Google 地图。

为此,我需要以下信息:

操作:android.intent.action.DIAL

ActivityPackage:???

ActivityClass:???

我猜这个包是com.android.phone。但我也需要ActivityClass。我试图用谷歌搜索它,但找不到任何关于它的信息。

编辑:事实证明,App Inventor 提供了一种直接打电话的方式(见屏幕截图)。

【问题讨论】:

  • 正如我所说,我使用的是 App Inventor,而不是 Java 编码。所以我需要类名。
  • 对于您的设备,您可以通过代码读取 logcat。并且在拨打号码时,您可以查看正在吃午饭的活动。
  • 如何读取 logcat?我必须为此使用 Eclipse 吗?
  • 我在logcat中只获取包名,没有获取到activity类名。

标签: android android-activity app-inventor


【解决方案1】:

App Inventor中,您可以使用Phone Call component拨打电话并拨打电话

PhoneCall 是一个不可见的组件,它拨打电话号码属性中指定的号码,可以在设计器或块编辑器中设置。您可以使用 MakePhoneCall 方法以编程方式从您的应用拨打电话。

要直接指定电话号码,请将 PhoneNumber 属性设置为具有指定数字的文本(例如,“6505551212”)。数字可以用连字符、句点和括号进行格式化;他们被忽略了。数字中不能包含空格。

如果您尝试做其他事情,这些 Activity Starter 链接可能会有所帮助:

【讨论】:

  • 是的,我自己才发现的。不知道实现它是如此容易。我更新了我的问题并添加了一个屏幕截图,其中包含来自块编辑器的可能解决方案。
【解决方案2】:

试试这个来阅读日志-

 try {
          Process process = Runtime.getRuntime().exec("logcat -d");
          BufferedReader bufferedReader = new BufferedReader(
          new InputStreamReader(process.getInputStream()));

          StringBuilder log=new StringBuilder();
          String line = "";
          while ((line = bufferedReader.readLine()) != null) {
            log.append(line);
          }
          TextView tv = (TextView)findViewById(R.id.textView1);
          tv.setText(log.toString());
        } catch (IOException e) {
        }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-12
    • 2020-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-12
    相关资源
    最近更新 更多