android - 如何通过 Intent 从我自己的 Activity 中启动 connectbot

标签 android android-intent android-activity ssh

我的申请有问题。我想通过 Intent 从我的应用程序启动 connectbot,如果我的 Activity 开始,我也想启动 connectbot。如何从我的 Activity 中 Intent 连接机器人应用程序,请回答我的问题。谢谢...

最佳答案

ConnectBot 的 AndroidManifest 具有以下 intent-filter:

<intent-filter>
  <action android:name="android.intent.action.VIEW" />
  <category android:name="android.intent.category.DEFAULT" />
  <category android:name="android.intent.category.BROWSABLE" />
  <data android:scheme="ssh" />
  <data android:scheme="telnet" />
  <data android:scheme="local" />
  <!-- format:  ssh://user@host:port/#nickname  -->
  <!-- format:  telnet://host:port/#nickname  -->
  <!-- format:  local://  -->
</intent-filter>

这意味着您可以通过以下操作抛出一个 Intent 来启动 ConnectBot 并打开 ConsoleActivity。 ConsoleActivity 不会对 Uri 执行任何操作,因此您可以使用任何以“ssh://”开头的内容:

startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("ssh://user@host:port/#nickname")));

ConnectBot 还响应 ACTION_PICK,这会打开已配置的连接列表。 ACTION_PICK 实际上解析给定的 uri 并打开昵称,但前提是用户、主机和端口也是正确的。

关于android - 如何通过 Intent 从我自己的 Activity 中启动 connectbot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11162086/

相关文章:

android - Java Eclipse 自动构建工作区不会停止?

c# - 无法使用Unity.Gradle构建Android APK失败

android-intent - 如何直接从 Android WebView 触发文件下载,以便经过身份验证的用户不必再次登录?

java - 关于如何修复 Android 中跳帧的建议

android - 如何在对话框中获取SharedPreferences?

android - ConstraintLayout GONE View 占用空间

android - 视频播放完毕后启动 Activity

java - 我什么时候必须沮丧一些事情?

java - 在 android 中按 Intent 传递包时在主要 Activity 上获取包

java - 在 3 个 Activity 之间传递值