TweetView 首次出现在屏幕上时会导致 ANR

TweetView cause ANR when first appear on screen

我用的是3.0.0版本的Android Twitter SDK,初始化用:

        TwitterConfig config = new TwitterConfig.Builder(this)
                .twitterAuthConfig(new TwitterAuthConfig(TWITTER_CONSUMER_KEY, TWITTER_CONSUMER_SECRET))
                .logger(new DefaultLogger(Log.INFO))
                .debug(false)
                .build();
        Twitter.initialize(config);

简单创建:

    CompactTweetView tweetView = new CompactTweetView(activity, getTweetJsonData());
    tweetView.setTweetActionsEnabled(true);

RecyclerView 中,在我使用 CompactTweetView 进入此屏幕后,大约 15-20 秒出现 ANR 问题。只有第一次在应用程序实例中,次要和其他项目立即显示。如果我再次关闭并打开屏幕,项目也会立即显示。

问题出在 sdk-init:

Twitter.initialize(config);

我调用的不是ui-thread(我在AsyncTask中调用它),我改成Application.onCreate()方法后,问题就解决了