2014-09-08 4 views
0

Google Play 서비스를 처음 사용합니다.Google Play 서비스를 초기화 할 수 없습니다.

"google-play-services-lib"및 "BaseGameUtils"라이브러리를 추가했습니다. 나는 내 수업 변경에 "BaseGameActivity을"확장 여기

코드입니다 :

public class MainActivity extends BaseGameActivity implements View.OnClickListener { 
    Button skipBut; 
    View signInBut; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 
     this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
     this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 

     setContentView(R.layout.activity_main); 

     skipBut = (Button) findViewById(R.id.justPlay); 
     signInBut = (View) findViewById(R.id.sign_in_button); 
     skipBut.setOnClickListener(this); 
     signInBut.setOnClickListener(this);    

    } 

    @Override 
    public void onClick(View view) { 
     // TODO Auto-generated method stub 
     if(view.getId() == R.id.sign_in_button){ 
      beginUserInitiatedSignIn(); 
     } 
     else if(view.getId() == R.id.justPlay){ 
      // play without sign in .... code .... 
     } 
    } 

@Override 
public void onSignInFailed() { 
    // TODO Auto-generated method stub 
    Toast.makeText(getApplicationContext(), "fail", Toast.LENGTH_SHORT).show(); 
} 

@Override 
public void onSignInSucceeded() { 
    // TODO Auto-generated method stub 
    Toast.makeText(getApplicationContext(), "success", Toast.LENGTH_SHORT).show(); 
} 

}

하지만 내 앱은 아래로 충돌한다. 이유를 찾을 수 없습니다. 참고 : 또한 응용 프로그램 ID를 Manifest 및 문자열 (app_id)로 추가했습니다. 여기

<meta-data android:name="com.google.android.gms.version" 
      android:value="@integer/google_play_services_version" /> 

<meta-data android:name="com.google.android.gms.games.*****id****" 
      android:value="@string/app_id" /> 

가 로그 캣입니다 :

09-08 14:57:19.500: W/ActivityThread(18213): Application com.cdev.colormatch is waiting for the debugger on port 8100... 
09-08 14:57:19.520: I/System.out(18213): Sending WAIT chunk 
09-08 14:57:19.540: I/dalvikvm(18213): Debugger is active 
09-08 14:57:19.720: I/System.out(18213): Debugger has connected 
09-08 14:57:19.725: I/System.out(18213): waiting for debugger to settle... 
09-08 14:57:19.925: I/System.out(18213): waiting for debugger to settle... 
09-08 14:57:20.125: I/System.out(18213): waiting for debugger to settle... 
09-08 14:57:20.325: I/System.out(18213): waiting for debugger to settle... 
09-08 14:57:20.525: I/System.out(18213): waiting for debugger to settle... 
09-08 14:57:20.725: I/System.out(18213): waiting for debugger to settle... 
09-08 14:57:20.925: I/System.out(18213): waiting for debugger to settle... 
09-08 14:57:21.125: I/System.out(18213): debugger has settled (1465) 
09-08 14:57:21.505: W/PopupManager(18213): You have not specified a View to use as content view for popups. Falling back to the Activity content view which may not work properly in future versions of the API. Use setViewForPopups() to set your content view. 
09-08 14:57:22.225: D/dalvikvm(18213): threadid=1: still suspended after undo (sc=1 dc=1) 

업데이트

내가 (https://developers.google.com/games/services/android/init#using_gamehelper_without_basegameactivity에서 설명) GameBaseActivity에

public class MainActivity extends ActionBarActivity implements View.OnClickListener { 
    Button skipBut; 
    View signInBut; 

    GameHelper mHelper; 

    boolean mExplicitSignOut = false; 
    boolean mInSignInFlow = false; 
    GoogleApiClient mClient; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 
     setContentView(R.layout.activity_main); 
     this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
     this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 



     skipBut = (Button) findViewById(R.id.justPlay); 
     signInBut = (View) findViewById(R.id.sign_in_button); 
     skipBut.setOnClickListener(this); 
      signInBut.setOnClickListener(this); 

     GoogleApiClient.Builder builder = new GoogleApiClient.Builder(this); 
      builder.addApi(Games.API) 
        .addApi(Plus.API) 
        .addApi(AppStateManager.API) 
        .addScope(Games.SCOPE_GAMES) 
        .addScope(Plus.SCOPE_PLUS_LOGIN) 
        .addScope(AppStateManager.SCOPE_APP_STATE); 
      mClient = builder.build(); 

      mHelper = new GameHelper(this, GameHelper.CLIENT_ALL); 


      GameHelperListener listener = new GameHelper.GameHelperListener() { 
       @Override 
       public void onSignInSucceeded() { 
        // handle sign-in succeess 
       } 
       @Override 
       public void onSignInFailed() { 
        // handle sign-in failure (e.g. show Sign In button) 
       } 

      }; 
      mHelper.setup(listener); 


    } 

    @Override 
    public void onClick(View view) { 
     // TODO Auto-generated method stub 
     if(view.getId() == R.id.sign_in_button){ 
      mHelper.beginUserInitiatedSignIn(); 
     } 
     else if(view.getId() == R.id.justPlay){ 
      // skipp sign in 
     } 
    } 
} 

을 확장하지 않고 게임 도우미를 사용하여 시도했지만 여전히 다운 충돌 :(

+0

이 일부 사용 될 수 있습니다 : https://github.com/marmalade/s3eGooglePlayGames/blob/master/source/android/GameHelper.java – 2Dee

+0

이것은 라이브러리로 사용하고있는 GameHelper 클래스입니다. 나에게 무슨 말하려고 한거야? @ 2Dee – ctarimli

+0

지정한 logcat에는 오류가 없으므로 문제가 무엇인지 파악하기가 어렵습니다. logcat을 오류가 포함 된 사본으로 업데이트하십시오 (즉, 앱이 고장난 곳). 접두어 앞에 'E'가 붙습니다. – free3dom

답변

-1

당신이 당신의에서 onCreate (일부 자바 코드를 추가해야합니다 link

이)도 오른쪽 열에 하나를 사용하여 단계를 수행하려고에 따라

// Java code required. 
// testDevices and loadAdOnCreate attributes are 
// no longer available. 
AdView adView = (AdView)this.findViewById(R.id.adView); 
AdRequest adRequest = new AdRequest.Builder() 
.addTestDevice(AdRequest.DEVICE_ID_EMULATOR) 
.addTestDevice("TEST_DEVICE_ID") 
.build(); 
adView.loadAd(adRequest); 
+0

잘못된 것이거나이 링크는 배너 및/또는 광고를 적용하는 지침입니까? @ user1283633 – ctarimli

관련 문제