0

我知道我与 C++ 并不完全相关,但是当调用一个名为 LoadAd() 的函数时我遇到了一些麻烦。我尝试在 OnTimer 中的计时器中使用这个函数,在 OnFormShow 和 OnFormCreate 等事件中(是的,我知道它不能在那个函数中,但我试过了)。但是,在执行此功能时,应用程序总是会获得 FC(强制关闭)......有什么解决方案吗?

这是我的代码的一部分:

void __fastcall TfrmPrincipal::FormCreate(TObject *Sender)
{
    // This defines the default active tab at runtime
    abasPrinc->ActiveTab = abaDisp;
    Auto = false;
    Manual = false;
    SEM_AD = false;

    ad1->AdUnitID = "SECRET";
    ad2->AdUnitID = "SECRET";

}

和:

void __fastcall TfrmPrincipal::FormShow(TObject *Sender)
{
    ad1->LoadAd();
    ad2->LoadAd();
}

声明(Principal.h)

//------------------------------------------------ --------------------------

#ifndef PrincipalH
#define PrincipalH
//---------------------------------------------------------------------------
#include <System.Classes.hpp>
#include <FMX.Controls.hpp>
#include <FMX.Forms.hpp>
#include <FMX.ActnList.hpp>
#include <FMX.Gestures.hpp>
#include <FMX.StdCtrls.hpp>
#include <FMX.TabControl.hpp>
#include <FMX.Types.hpp>
#include <System.Actions.hpp>
#include <FMX.ListView.hpp>
#include <FMX.ListView.Types.hpp>
#include <FMX.MultiView.hpp>
#include <FMX.Advertising.hpp>
#include <FMX.Layouts.hpp>
#include <FMX.ListBox.hpp>
#include <FMX.Objects.hpp>
#include <FMX.Memo.hpp>
//---------------------------------------------------------------------------
class TfrmPrincipal : public TForm
{
__published:    // IDE-managed Components
    /* ...  */

    TBannerAd *ad1;
    TBannerAd *ad2;

    /* ...  */

    void __fastcall FormCreate(TObject *Sender);
    void __fastcall FormKeyUp(TObject *Sender, WORD &Key, System::WideChar &KeyChar,
          TShiftState Shift);

    /* ...  */

    void __fastcall FormShow(TObject *Sender);

    /* ...  */


private:    // User declarations
public:     // User declarations
    __fastcall TfrmPrincipal(TComponent* Owner);
    void adaptar();
    int Num(unsigned char caractere);
    void RedefInicio ();
};
//---------------------------------------------------------------------------
extern PACKAGE TfrmPrincipal *frmPrincipal;
//---------------------------------------------------------------------------
#endif

从现在开始非常感谢。

4

1 回答 1

0

我发现了问题......我使用的是旧的 AndroidManifest.template(我开始在 XE6 上构建这个应用程序),所以一些声明为 ADMob 是不同的并不起作用。为了避免像我这样的情况,只需要删除最旧的自动生成的文件......

XD

于 2015-04-08T02:51:29.117 回答