繁体   English   中英

Admob与android中的pygame集成

[英]Admob integration with pygame in android

您好我很想知道用于在Android的pygame Subset中编写的集成Admob for App的解决方案。 我试过下面对我有用的东西:(

仍然没有什么工作对我可能是没有办法:(

尝试1:我跟着谷歌https://developers.google.com/mobile-ads-sdk/docs/admob/fundamentals#android此解决方案没有代码更改只有build.xml修改它对我有效:(

尝试2:尝试下面的解决方案。 http://www.michenux.net/android-admob-tutorial-461.html它也不适合我:(

尝试3:试图破解PythonActivity.java。 但要低于相关的错误。 我在\\ pgs4a-0.9.4 \\ libs中GoogleAdMobAdsSdk-6.4.1.jar 。路径仍然是我的ERROR。

以下是我的代码:

  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

当我启动我的应用程序时,我得到以下错误:请帮助。

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: com.android.internal.view.IInputMethodClient$Stub$Proxy@44097098
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}

这可能就是你要找的东西。 我知道这已经太晚了,但未来的人可能会从中受益。

@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);
}

看起来有人最近做了一个pgs4a的分支 ,它有一个admob支持。 在撰写本文时,它似乎没有任何文档,也没有我尝试过,但它当然值得一看。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM