【问题标题】:How to optimize startup time for android application with Ads如何使用广告优化 Android 应用程序的启动时间
【发布时间】:2022-01-20 16:13:30
【问题描述】:

我创建了一个播放单个音乐曲目的简单移动应用程序(作为练习),并且我在 onCreate 方法中添加了一个横幅广告,如下面的代码 sn-ps 所示。

但是,启动时间比以前增加了几秒钟,这对于用户体验来说确实很烦人。有没有办法将广告添加到应用程序并减少应用程序的启动时间。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    // Adding Banner Add
    MobileAds.initialize(this, new OnInitializationCompleteListener() {
        @Override
        public void onInitializationComplete(InitializationStatus initializationStatus) {
        }
    });
    AdView mAdView = findViewById(R.id.adView1);
    AdRequest adRequest = new AdRequest.Builder().build();
    mAdView.loadAd(adRequest);



    m1 = MediaPlayer.create(this, R.raw.short_sound);


    Button playSong = findViewById(R.id.playSong);
    Button stopSong = findViewById(R.id.stopSong);
    Button reset = findViewById(R.id.reset);

【问题讨论】:

    标签: java android android-studio admob startup


    【解决方案1】:

    考虑在单独的线程上加载广告:

    new Runnable()
    {
        @Override
        public void run()
        {
            MobileAds.initialize(this, new OnInitializationCompleteListener()
            {
                @Override
                public void onInitializationComplete(InitializationStatus initializationStatus)
                {
                }
            });
            AdRequest adRequest = new AdRequest.Builder().build();
        }
    }.run();
    

    然后将结果加载到主线程上的 View 中,如下所示:

    runOnUiThread(...set component to ui...);
    

    您必须确保首先使用一些占位符显示初始化广告视图。

    【讨论】:

      猜你喜欢
      • 2011-03-12
      • 1970-01-01
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      • 2012-04-07
      • 2019-06-15
      • 2012-05-12
      相关资源
      最近更新 更多