2013-08-10 5 views
5

Ciao Sono curioso di sapere la soluzione per l'integrazione di Admob per l'app scritta in pygame Subset per Android. ho cercato qui di seguito le cose che ha fatto' t lavoro per me :(Integrazione di Admob con pygame in android

Ancora niente lavoro per me può essere non c'è modo :(

TRY 1: Ho seguito google https://developers.google.com/mobile-ads-sdk/docs/admob/fundamentals#android Questo soluzione ha nessun cambiamento di codice solo build.xml modifica E didt lavora per me :(

TRY 2:. provato sotto solutio anche http://www.michenux.net/android-admob-tutorial-461.html Inoltre did't lavoro per me :(

TRY 3: Ho cercato di incidere PythonActivity.java. Ma sotto gli errori correlati. Io ho GoogleAdMobAdsSdk-6.4.1.jar in \ pgs4a-0.9.4 \ libs PERCORSO ancora mi capita di trovare sotto tipo di ERRORE.

Qui di seguito è il mio codice:

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
    //vrbilgi 

     setContentView(R_Layout_main); 
    // setContentView(r.layout.main); 

      // Create the adView 
    //  adView = new AdView(this, AdSize.BANNER, MY_AD_UNIT_ID); 
      adView = new AdView(this, AdSize.BANNER,"a1520527530b444"); 

      // Lookup your LinearLayout assuming it's been given 
      // the attribute android:id="@+id/mainLayout" 
      // LinearLayout layout = (LinearLayout)findViewById(R.id.mainLayout); 
      LinearLayout layout = (LinearLayout)findViewById(R_adView); 

      // Add the adView to it 
      layout.addView(adView); 

      // Initiate a generic request to load it with an ad 
      adView.loadAd(new AdRequest()); 



    //vrbilgi 

Quando lancio la mia app ottengo sotto l'errore: Qualsiasi aiuto per favore.

I/ActivityManager( 66): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.number.game/org.renpy.android.PythonActivity } 
I/ActivityManager( 66): Start proc com.number.game:python for activity com.number.game/org.renpy.android.PythonActivity: pid=1214 uid=10036 gids={1015, 3003} 
I/ActivityManager( 66): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.number.game/org.renpy.android.PythonActivity } 
E/Ads  (1214): The android:configChanges value of the com.google.ads.AdActivity must include screenLayout. 
E/Ads  (1214): The android:configChanges value of the com.google.ads.AdActivity must include uiMode. 
E/Ads  (1214): The android:configChanges value of the com.google.ads.AdActivity must include screenSize. 
E/Ads  (1214): The android:configChanges value of the com.google.ads.AdActivity must include smallestScreenSize. 
E/Ads  (1214): You must have AdActivity declared in AndroidManifest.xml with configChanges. 
E/Ads  (1214): You must have AdActivity declared in AndroidManifest.xml with configChanges. 
D/AndroidRuntime(1214): Shutting down VM 
W/dalvikvm(1214): threadid=1: thread exiting with uncaught exception (group=0x4001d800) 
D/dalvikvm(1214): GC_FOR_MALLOC freed 3598 objects/323688 bytes in 110ms 
E/AndroidRuntime(1214): FATAL EXCEPTION: main 
E/AndroidRuntime(1214): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.number.game/org.renpy.android.PythonActivity}: java.lang.ClassCastException: com.google.ads.AdView 
E/AndroidRuntime(1214):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663) 
E/AndroidRuntime(1214):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 
E/AndroidRuntime(1214):  at android.app.ActivityThread.access$2300(ActivityThread.java:125) 
E/AndroidRuntime(1214):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 
E/AndroidRuntime(1214):  at android.os.Handler.dispatchMessage(Handler.java:99) 
E/AndroidRuntime(1214):  at android.os.Looper.loop(Looper.java:123) 
E/AndroidRuntime(1214):  at android.app.ActivityThread.main(ActivityThread.java:4627) 
E/AndroidRuntime(1214):  at java.lang.reflect.Method.invokeNative(Native Method) 
E/AndroidRuntime(1214):  at java.lang.reflect.Method.invoke(Method.java:521) 
E/AndroidRuntime(1214):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 
E/AndroidRuntime(1214):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 
E/AndroidRuntime(1214):  at dalvik.system.NativeStart.main(Native Method) 
E/AndroidRuntime(1214): Caused by: java.lang.ClassCastException: com.google.ads.AdView 
E/AndroidRuntime(1214):  at org.renpy.android.PythonActivity.onCreate(PythonActivity.java:77) 
E/AndroidRuntime(1214):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
E/AndroidRuntime(1214):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) 
E/AndroidRuntime(1214):  ... 11 more 
W/ActivityManager( 66): Force finishing activity com.number.game/org.renpy.android.PythonActivity 
W/ActivityManager( 66): Activity pause timeout for HistoryRecord{43fec778 com.number.game/org.renpy.android.PythonActivity} 
I/Process (1214): Sending signal. PID: 1214 SIG: 9 
W/InputManagerService( 66): Window already focused, ignoring focus gain of: [email protected] 
I/ActivityManager( 66): Process com.number.game:python (pid 1214) has died. 
W/ActivityManager( 66): Activity destroy timeout for HistoryRecord{43fec778 com.number.game/org.renpy.android.PythonActivity} 
+0

ha qualche notizia? Voglio anche rilanciare un gioco renpy. Ma è inutile se non puoi inserire annunci in esso – Goot

risposta

1

Questo potrebbe essere quello che stai cercando. So che è molto tardi, ma le persone future potrebbero trarne beneficio.

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration(); 
    cfg.useGL20 = true; 
    cfg.useAccelerometer = false; 
    cfg.useCompass = false; 

    // Create the layout 
    RelativeLayout layout = new RelativeLayout(this); 

    // Do the stuff that initialize() would do for you 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
        WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); 

    // Create the pygame View 
    View gameView = initializeForView(R_layout_main, cfg); 

    // Create and setup the AdMob view 
    adView = new AdView(this, AdSize.BANNER, "your id here"); // Put in your secret key here 
    adView.loadAd(new AdRequest()); 

    // Add the pygame view 
    layout.addView(gameView); 

    // Add the AdMob view 
    RelativeLayout.LayoutParams adParams = 
      new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, 
          RelativeLayout.LayoutParams.WRAP_CONTENT); 
    adParams.addRule(RelativeLayout.ALIGN_PARENT_TOP); 
    adParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); 

    layout.addView(adView, adParams); 

    // Hook it all up 
    setContentView(layout); 
} 
0

Sembra che qualcuno ha recentemente fatto un fork di pgs4a che ha il sostegno AdMob. Al momento della stesura, non sembra che abbia alcuna documentazione, né l'ho provato, ma vale sicuramente la pena dare un'occhiata.