gpg::AndroidSupport

#include <android_support.h>

Android 4.0 öncesi desteği etkinleştiren işlevler.

Özet

Android Yaşam Döngüsü Geri Çağırmaları

Play Oyun Hizmetleri, Android 2.3 veya 3.x yüklü cihazları (14'ten önceki API Sürümü) hedefleyen uygulamalar için Etkinlik yaşam döngüsü geri aramalarını otomatik olarak alamaz. Bu gibi durumlarda Play Oyun Hizmetleri, yaşam döngüsü olaylarını bildirmek için Etkinlik'in sahibi olmayı kullanır. GameServices nesnesine sahip olan tüm etkinlikler, kendi yaşam döngüsü geri çağırma işlevleri içinden AndroidSupport::* işlevlerini çağırmalıdır. Bu işlevlerdeki bağımsız değişkenler Android tarafından sağlanan bağımsız değişkenlerle eşleşir, dolayısıyla ek bir işlem yapılması gerekmez.

Android 4.0 ve sonraki sürümleri (API Sürümü 14'ten büyük veya 14'e eşit) hedefleyen uygulamalar için bu işlev çağrılarının çoğu gereksizdir. Bu tür uygulamalar için yalnızca OnActivityResult işlevi çağrılmalıdır.

Java Etkinliği kullanan, Android 4.0 öncesi bir oyun için örnek kod

Lütfen Java Etkinliğinize aşağıdakileri ekleyin. Bu kodu mevcut yaşam döngüsü işlevlerinizle birleştirmeniz gerekebilir.

import android.app.Activity;
import android.content.Intent;

public class YourActivity extends Activity {
  protected void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    nativeOnActivityCreated(this, savedInstanceState);
  }

  protected void onDestroy(){
    super.onDestroy();
    nativeOnActivityDestroyed(this);
  }

  protected void onPause(){
    super.onPause();
    nativeOnActivityPaused(this);
  }

  protected void onResume(){
    super.onResume();
    nativeOnActivityResumed(this);
  }

  protected void onStart(){
    super.onStart();
    nativeOnActivityStarted(this);
  }

  protected void onStop(){
    super.onStop();
    nativeOnActivityStopped(this);
  }

  protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    nativeOnActivitySaveInstanceState(this, outState);
  }

  protected void onActivityResult(int requestCode,
                                  int resultCode,
                                  Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    nativeOnActivityResult(this, requestCode, resultCode, data);
  }

  // Implemented in C++.
  private static native void nativeOnActivityCreated(
      Activity activity, Bundle savedInstanceState);
  private static native void nativeOnActivityDestroyed(Activity activity);
  private static native void nativeOnActivityPaused(Activity activity);
  private static native void nativeOnActivityResumed(Activity activity);
  private static native void nativeOnActivitySaveInstanceState(
      Activity activity,
      Bundle outState);
  private static native void nativeOnActivityStarted(Activity activity);
  private static native void nativeOnActivityStopped(Activity activity);
  private static native void nativeOnActivityResult(
      Activity activity,
      int requestCode,
      int resultCode,
      Intent data);
}
Ardından, yerel kitaplığınıza aşağıdaki yönlendirme işlevlerini ekleyin.
void Java_com_example_yourapp_YourActivity_nativeOnActivityCreated(
    JNIEnv* env,
    jobject thiz,
    jobject activity,
    jobject saved_instance_state) {
  gpg::AndroidSupport::OnActivityCreated(env,
                                         activity,
                                         saved_instance_state);
}

void Java_com_example_yourapp_YourActivity_nativeOnActivityDestroyed(
    JNIEnv* env, jobject thiz, jobject activity) {
  gpg::AndroidSupport::OnActivityDestroyed(env, activity);
}

void Java_com_example_yourapp_YourActivity_nativeOnActivityPaused(
    JNIEnv* env, jobject thiz, jobject activity) {
  gpg::AndroidSupport::OnActivityPaused(env, activity);
}

void Java_com_example_yourapp_YourActivity_nativeOnActivityResumed(
    JNIEnv* env, jobject thiz, jobject activity) {
  gpg::AndroidSupport::OnActivityResumed(env, activity);
}

void Java_com_example_yourapp_YourActivity_nativeOnActivitySaveInstanceState(
    JNIEnv* env, jobject thiz, jobject activity, jobject out_state) {
  gpg::AndroidSupport::OnActivitySaveInstanceState(env, activity, out_state);
}

void Java_com_example_yourapp_YourActivity_nativeOnActivityStarted(
    JNIEnv* env, jobject thiz, jobject activity) {
  gpg::AndroidSupport::OnActivityStarted(env, activity);
}

void Java_com_example_yourapp_YourActivity_nativeOnActivityStopped(
    JNIEnv* env, jobject thiz, jobject activity) {
  gpg::AndroidSupport::OnActivityStopped(env, activity);
}

void Java_com_example_yourapp_YourActivity_nativeOnActivityResult(
    JNIEnv* env,
    jobject thiz,
    jobject activity,
    jint request_code,
    jint result_code,
    jobject data) {
  gpg::AndroidSupport::OnActivityResult(
      env, activity, request_code, result_code, data);
}

Java Etkinliği kullanan bir Android 4.0+ oyunu için örnek kod

Lütfen Java Etkinliğinize aşağıdakileri ekleyin. Bu kodu mevcut yaşam döngüsü işlevlerinizle birleştirmeniz gerekebilir.

public class YourActivity extends Activity {
  protected void onActivityResult(int requestCode,
                                  int resultCode,
                                  Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    nativeOnActivityResult(this, requestCode, resultCode, data);
  }

  // Implemented in C++.
  private static native void nativeOnActivityResult(
      Activity activity,
      int requestCode,
      int resultCode,
      Intent data);
}
Ardından, yerel kitaplığınıza aşağıdaki yönlendirme işlevlerini ekleyin.
void Java_com_example_yourapp_YourActivity_nativeOnActivityResult(
    JNIEnv* env,
    jobject thiz,
    jobject activity,
    jint request_code,
    jint result_code,
    jobject data) {
  gpg::AndroidSupport::OnActivityResult(
      env, activity, request_code, result_code, data);
}

Herkese açık statik işlevler

OnActivityCreated(JNIEnv *env, jobject activity, jobject saved_instance_state)
void
Java etkinliğinizin onActivityCreated öğesinden veri yönlendirmek için çağrılmalıdır.
OnActivityDestroyed(JNIEnv *env, jobject activity)
void
Java etkinliğinizin OnActivityDestroyed etkinliğinden veri yönlendirmek için çağrılmalıdır.
OnActivityPaused(JNIEnv *env, jobject activity)
void
Java etkinliğinizin OnActivityPause'daki verileri yönlendirmek için çağrılmalıdır.
OnActivityResult(JNIEnv *env, jobject activity, jint request_code, jint result_code, jobject result)
void
Java etkinliğinizin OnActivityResult öğesinden verileri yönlendirmek için çağrılmalıdır.
OnActivityResumed(JNIEnv *env, jobject activity)
void
Java etkinliğinizin OnActivityActivityd bölümünden veri yönlendirmek için çağrılmalıdır.
OnActivitySaveInstanceState(JNIEnv *env, jobject activity, jobject out_state)
void
Java etkinliğinizin OnActivitySaveInstanceState durumundan veri yönlendirmek için çağrılmalıdır.
OnActivityStarted(JNIEnv *env, jobject activity)
void
Java etkinliğinizin OnActivityStarted öğesinden veri yönlendirmek için çağrılmalıdır.
OnActivityStopped(JNIEnv *env, jobject activity)
void
Java etkinliğinizin OnActivityStopped etkinliğinden veri yönlendirmek için çağrılmalıdır.

Herkese açık statik işlevler

OnActivityCreated

void gpg::AndroidSupport::OnActivityCreated(
  JNIEnv *env,
  jobject activity,
  jobject saved_instance_state
)

Java etkinliğinizin onActivityCreated öğesinden veri yönlendirmek için çağrılmalıdır.

Yalnızca Android 2.3.x desteği için gereklidir.

OnActivityDestroyed

void gpg::AndroidSupport::OnActivityDestroyed(
  JNIEnv *env,
  jobject activity
)

Java etkinliğinizin OnActivityDestroyed etkinliğinden veri yönlendirmek için çağrılmalıdır.

Yalnızca Android 2.3.x desteği için gereklidir.

OnActivityPaused

void gpg::AndroidSupport::OnActivityPaused(
  JNIEnv *env,
  jobject activity
)

Java etkinliğinizin OnActivityPause'daki verileri yönlendirmek için çağrılmalıdır.

Yalnızca Android 2.3.x desteği için gereklidir.

OnActivityResult

void gpg::AndroidSupport::OnActivityResult(
  JNIEnv *env,
  jobject activity,
  jint request_code,
  jint result_code,
  jobject result
)

Java etkinliğinizin OnActivityResult öğesinden verileri yönlendirmek için çağrılmalıdır.

OnActivityResumed

void gpg::AndroidSupport::OnActivityResumed(
  JNIEnv *env,
  jobject activity
)

Java etkinliğinizin OnActivityActivityd bölümünden veri yönlendirmek için çağrılmalıdır.

Yalnızca Android 2.3.x desteği için gereklidir.

OnActivitySaveInstanceState

void gpg::AndroidSupport::OnActivitySaveInstanceState(
  JNIEnv *env,
  jobject activity,
  jobject out_state
)

Java etkinliğinizin OnActivitySaveInstanceState durumundan veri yönlendirmek için çağrılmalıdır.

Yalnızca Android 2.3.x desteği için gereklidir.

OnActivityStarted

void gpg::AndroidSupport::OnActivityStarted(
  JNIEnv *env,
  jobject activity
)

Java etkinliğinizin OnActivityStarted öğesinden veri yönlendirmek için çağrılmalıdır.

Yalnızca Android 2.3.x desteği için gereklidir.

OnActivityStopped

void gpg::AndroidSupport::OnActivityStopped(
  JNIEnv *env,
  jobject activity
)

Java etkinliğinizin OnActivityStopped etkinliğinden veri yönlendirmek için çağrılmalıdır.

Yalnızca Android 2.3.x desteği için gereklidir.