android - 如何通过非 Activity 类从另一个 Activity 获取数据

标签 android android-intent android-softkeyboard

我有一个软键盘,它不会扩展 Activity 它有一个按钮,当我点击它时我完美地打算另一个应用程序但是当我想从那个扩展 Activity 并有一个按钮的应用程序获得响应时,问题是当我单击该按钮时,它会返回到我的第一个应用程序,但我的第一个应用程序无法从中获得 Intent 。 这是我的软键盘的一部分:

  public void onKey(int primaryCode, int[] keyCodes) {
   if (primaryCode == LatinKeyboardView.KEYCODE_11) // username_paste_button
    {
        handle_username_paste(); // handle username_paste_button
    }

}
private void handle_username_paste() { // handle username_paste_button
   try {
               // url = (EditText) findViewById(R.id.urlTextEdit);
                String text ="google.com";
                Intent i = new Intent(Intent.ACTION_MAIN);
                PackageManager manager = getPackageManager();
                i = manager.getLaunchIntentForPackage("fake.domain.examplesta");
                i.putExtra("URL", text);
                i.addCategory(Intent.CATEGORY_LAUNCHER);
                startActivity(i);
               // startActivityForResult(i, 1);
            } catch (Exception e) {
                e.printStackTrace();
                //Toast.makeText(v.getContext(), "App Not Found", Toast.LENGTH_LONG).show();
            }
    String name = getIntent().getStringExtra("OTP");
}

知道如何解决这个问题吗?

最佳答案

通常您会调用 startActivityForResult(i, 1) 来开始一个 Activity ,当您完成该 Activity 时,您会调用:

setResult(RESULT_OK) 完成()

现在的问题是,为了接收结果,您需要 startActivityForResult() 方法,该方法只能从扩展 Activity 类的类中获得。您没有提供太多关于“软键盘”类正在做什么或确切使用什么的信息,但我能提供的唯一建议是重组您的类以从 Activity 中驱动。

关于android - 如何通过非 Activity 类从另一个 Activity 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33897148/

相关文章:

java - BaseActivity 首先扩展 Activity,但另一个 Activity 出现 nullpointerException

java - 带有 scrollView 的键盘

android - 为 EditText(Android) 显示英文键盘

java - 我的 Android tic-tac-toe 游戏中的 checkForWin() 方法总是放错积分

java - 使用 Jackson 从 JSON 映射 BasicNameValuePair

具有多个表的 Android 内容提供程序未知 uri 错误

android - 由 : java. lang.IllegalStateException 引起:

Android 应用程序从后台导航到启动 Activity

android - 使用 Kotlin 关闭/隐藏 Android 软键盘

java - 在主 ui 线程上处理来自其他线程的过多动画请求 - android