Android 中的 android.os.TransactionTooLargeException 错误

标签 android kotlin runtimeexception

我的 Android 应用程序返回 android.os.TransactionTooLargeException 时出现问题,即使我清除了 Fragment 中的所有数据也是如此。

从我实现的 fragment - 见下面的代码,我开始一个新的 Activity ,该 Activity 开始但一秒钟后 android.os.TransactionTooLargeException 被抛出。我试图清理所有包等,因此该 fragment 尽可能简单,但它抛出:

java.lang.RuntimeException: android.os.TransactionTooLargeException: data parcel size 608932 bytes.

请问您知道问题出在哪里吗?

public class ShowDetailFragment extends Fragment {

  public static boolean was207Called = false;

  public interface ExpandViewListener {
    void onExpandClicked();
  }

  public void setFullScreenListener(ExpandViewListener listener) {
  }

  public ShowDetailFragment() {
  }

  @Nullable
  @Override
  public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    View v = inflater.inflate(R.layout.fragment_show_detail, null, true);
    return v;
  }

  @Override
  public void onActivityResult(int requestCode, int resultCode, Intent data) {
  }

  @Override
  public void onResume() {
    super.onResume();
  }

  @Override
  public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, null);
    Intent i = new Intent(getActivity().getApplicationContext(), ForgottenPasswordActivity.class);
    startActivity(i);
    return;
  }

  @Override
  public void onPause() {
    super.onPause();
  }

  @Override
  public void onSaveInstanceState(Bundle outState) {
  }

  public void onFragmentRemoved() {
    Log.d("XXXXX", "Frag removed");
  }

  @Override
  public void onStop() {
    super.onStop();
    Log.d("XXXX", "Stopping");
  }
}

最佳答案

请尝试:-

public class ShowDetailFragment extends Fragment {

  public static boolean was207Called = false;

  public interface ExpandViewListener {
    void onExpandClicked();
  }

  public void setFullScreenListener(ExpandViewListener listener) {
  }

  public ShowDetailFragment() {
  }

  @Nullable
  @Override
  public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    View v = inflater.inflate(R.layout.fragment_show_detail, container, false);
    return v;
  }

  @Override
  public void onActivityResult(int requestCode, int resultCode, Intent data) {
  }

  @Override
  public void onResume() {
    super.onResume();

    Intent i = new Intent(getActivity(), 
    ForgottenPasswordActivity.class);
    startActivity(i);
  }

  public void onFragmentRemoved() {
    Log.d("XXXXX", "Frag removed");
  }

  @Override
  public void onStop() {
    super.onStop();
    Log.d("XXXX", "Stopping");
  }
}

关于Android 中的 android.os.TransactionTooLargeException 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54107274/

相关文章:

java - 在 Android 应用程序中更改 HttpClient 的 OpenSSL 库

kotlin - vlcj - 如何在播放前更改音频音量?

android - 在单击按钮之前使屏幕不可单击

java - 带有已检查异常的调用方法

java - 查找给定类的所有子类 (Android)

java - 带有 Date 对象的奇怪 NullPointerException

android - 如何在运行测试时禁用 Fabric

java - 我收到以下运行时错误。请帮我找出原因

java - RuntimeException:Web 浏览器中的 InspirationTargetException

android - 在我的布局中添加一个小的 Numberpicker