2016-06-16 2 views
4

私は把握できない問題に直面しています。 このANRは、最初のアクティビティ画面でバックプレスしてホームウィンドウに移動したときに表示されます。 私はそれを押した後、アプリケーションに戻ろうとすると、白い画面が表示され、その後に黒い画面が表示されます。 1〜2分で、ANRメッセージポップアップが表示されます。私のGradleプレイサービスThat`sTagManagerServiceを使用したANR

だけで、初めてのユーザーがアプリに入り表示されます

def googlePlayServicesVersion = '9.0.2' 


compile "com.google.android.gms:play-services:$googlePlayServicesVersion" 
compile "com.google.android.gms:play-services-analytics:$googlePlayServicesVersion" 
compile "com.google.android.gms:play-services-auth:$googlePlayServicesVersion" 
compile "com.google.android.gms:play-services-vision:$googlePlayServicesVersion" 

Starting window AppWindowToken{44f94e90 token=Token{42a85dc8 ActivityRecord{430f4b70 u0 com.ioa***.****/com.******.****.activity.SignUpInTabActivity_ t84}}} timed out 

ANR in com.ioa***.**** 
     PID: 24075 
     Reason: Executing service com.ioacom.ioa***.****/com.google.android.gms.tagmanager.TagManagerService 
     Load: 4.49/4.91/5.12 
     CPU usage from 5972ms to 0ms ago: 
     1.3% 372/adbd: 0.1% user + 1.1% kernel/faults: 406 minor 
     1.1% 953/system_server: 0.6% user + 0.5% kernel/faults: 6 minor 
     0.1% 1//init: 0% user + 0.1% kernel/faults: 52 minor 
     0.3% 1053/com.android.systemui: 0.3% user + 0% kernel/faults: 2 minor 
     0.3% 18921/kworker/0:2: 0% user + 0.3% kernel 
     0.1% 3/ksoftirqd/0: 0% user + 0.1% kernel 
     0.1% 8/rcu_preempt: 0% user + 0.1% kernel 
     0.1% 144/mmcqd/0: 0% user + 0.1% kernel 
     0% 204/servicemanager: 0% user + 0% kernel 
     0% 224/mediaserver: 0% user + 0% kernel 
     0% 1097/wpa_supplicant: 0% user + 0% kernel 
     0.1% 1749/mpdecision: 0.1% user + 0% kernel 
     0% 17052/kworker/u8:7: 0% user + 0% kernel 
     0% 20159/kworker/0:3: 0% user + 0% kernel 
     0% 24075/com.ioa***.******: 0% user + 0% kernel 
     9.3% TOTAL: 2.8% user + 6.2% kernel + 0.1% iowait 
     CPU usage from 2824ms to 3341ms later: 
     3.8% 953/system_server: 0% user + 3.8% kernel/faults: 1 minor 
     3.8% 967/ActivityManager: 0% user + 3.8% kernel 
     9% TOTAL: 0% user + 0% kernel + 9% iowait 

マイランチャー活動関連:

public class FirstActivity extends AppCompatActivity { 

    public void onCreate() { 
     if (userDataAccess.getUserProfile() != null) { 
      startDashBoardActivity(); 
      finish(); 
     } else if (!preferences.isFirstAccess().get()) { 
      startLoginActivity(); 
     } 
    } 

} 

私のサインインも活動:

@EActivity(R.layout.activity_with_tabs_layout) 
public class SignUpInTabActivity extends AppCompatActivity { 

    @ViewById(R.id.toolbar) 
    Toolbar toolbar; 

    @ViewById(R.id.tabs) 
    TabLayout tabLayout; 

    @ViewById(R.id.viewpager) 
    ViewPager viewPager; 

    private LoginFragment loginFragment; 

    @AfterViews 
    public void init(){ 
     setSupportActionBar(toolbar); 
     ViewCompat.setElevation(tabLayout, 4); 
     if(getSupportActionBar() != null) { 
      toolbar.setSubtitleTextColor(ContextCompat.getColor(this, android.R.color.white)); 
      toolbar.setTitleTextColor(ContextCompat.getColor(this, android.R.color.white)); 
      toolbar.setTitle(R.string.*****); 
      toolbar.setSubtitle(R.string.flavor); 
     } 
     setupViewPager(); 
    } 

    @UiThread 
    public void setupViewPager() { 
     loginFragment = LoginFragment_.builder().build(); 
     ViewPagerTabsAdapter adapter = new ViewPagerTabsAdapter(getSupportFragmentManager()); 
     adapter.addFragment(loginFragment, getString(R.string.login).toUpperCase()); 
     adapter.addFragment(SignUpFragment_.builder().build(), getString(R.string.register_user).toUpperCase()); 
     viewPager.setAdapter(adapter); 
     tabLayout.setupWithViewPager(viewPager); 
    } 


    @Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     loginFragment.onActivityResult(requestCode,resultCode,data); 
    } 

} 
+0

backPressコードはデフォルトですが、これは –

+0

とtagmanagerserviceを上書きしていませんか? –

+0

問題のアクティビティのコードを見ることができないことを考慮すると、(タグマネージャの使用に基づいて)いくつかの 'pendingResult'を待っているブロック呼び出しを持っていると仮定します。 –

答えて

4

プレイサービス9+には問題があるようです。

私の最初の回避策は、8.4.0へのプレイサービスのロールバックであり、すべてが再び機能します。

上記の私を満たしていないので、私は、解決策を探し続ける、と

は、私はこの問題は、それが8.4上で動作する理由、私は理解し `tを特定して「一般的なプレイ・サービス」だったことが判明しました.0ではなく、9+ではなく。

私のソリューションは、以下の行

compile "com.google.android.gms:play-services:9.0.2" 

を削除し、単に特定の(これが最善の方法であるにかかわらず、当該の問題の)

compile "com.google.android.gms:play-services-analytics:9.0.2" 
compile "com.google.android.gms:play-services-auth:9.0.2" 
compile "com.google.android.gms:play-services-vision:9.0.2" 

を維持されており、それは動作します!

私は本当にエラーがANRであった理由を知りたいです。

関連する問題