有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在活动中添加Mobfox横幅广告代码

我正试图将mobfox广告添加到一个简单的webview应用程序中,我遵循了他们的指南。但我无法理解,尤其是主要活动。java部分。获得不同的错误,如类、接口或预期的枚举等。有人能告诉我如何将mobfox代码添加到java文件中吗?我试了很多,但都没能成功。使用Android studio。提前谢谢

主要活动。java代码

package com.webapp.webviewapp1;

import 安卓.os.Bundle;
import 安卓.support.v7.app.ActionBarActivity;
import 安卓.view.KeyEvent;
import 安卓.webkit.WebChromeClient;
import 安卓.webkit.WebView;
import 安卓.webkit.WebViewClient;

public class MainActivity extends ActionBarActivity {
    private WebView view; //membuat variabel view agar bisa akses method onKeyDown

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

        view = (WebView) this.findViewById(R.id.webView);
        view.getSettings().setJavaScriptEnabled(true);
        view.setWebViewClient(new MyBrowser());
        view.loadUrl("http://www.google.com"); //try js alert
        view.setWebChromeClient(new WebChromeClient()); // adding js alert support
    }

    private class MyBrowser extends WebViewClient {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }
    }

    public boolean onKeyDown(int keyCode, KeyEvent event) {
        //ketika disentuh tombol back
        if ((keyCode == KeyEvent.KEYCODE_BACK) && view.canGoBack()) {
            view.goBack(); //method goback() dieksekusi untuk kembali pada halaman sebelumnya
            return true;
        }
        // Jika tidak ada history (Halaman yang sebelumnya dibuka)
        // maka akan keluar dari activity
        return super.onKeyDown(keyCode, event);
    }

}

Mobfox横幅广告代码

// ...

import com.mobfox.sdk.bannerads.Banner;
import com.mobfox.sdk.bannerads.BannerListener;

// ...

Banner banner;

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

    banner = (Banner) findViewById(R.id.banner);

    final Activity self = this;
    banner.setListener(new BannerListener() {
        @Override
        public void onBannerError(View banner, Exception e) {
            Toast.makeText(self, e.getMessage(), Toast.LENGTH_SHORT).show();
        }
        @Override
        public void onBannerLoaded(View banner) {
            Toast.makeText(self, "loaded", Toast.LENGTH_SHORT).show();
        }
        @Override
        public void onBannerClosed(View banner) {
            Toast.makeText(self, "closed", Toast.LENGTH_SHORT).show();
        }
        @Override
        public void onBannerFinished() {
            Toast.makeText(self, "finished", Toast.LENGTH_SHORT).show();
        }
        @Override
        public void onBannerClicked(View banner) {
            Toast.makeText(self, "clicked", Toast.LENGTH_SHORT).show();
        }
        @Override
        public void onNoFill(View banner) {
            Toast.makeText(self, "no fill", Toast.LENGTH_SHORT).show();
        }
    });
    banner.setInventoryHash("<your-publication-hash>");
    banner.load();
}

//permission dialog for marshmello and above
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
    banner.onRequestPermissionsResult(requestCode, permissions, grantResults);
}

//add this so video ads will work properly
@Override
protected void onPause() {
    super.onPause();
    banner.onPause();
}

@Override
protected void onResume() {
    super.onResume();
    banner.onResume();
}

// ...

共 (1) 个答案

  1. # 1 楼答案

    虽然我不是技术支持团队的成员,但我对集成过程非常熟悉

    正如Stanislav所提到的,您似乎忘记了在下面的代码中添加出版物哈希:

    banner.setInventoryHash("<your-publication-hash>"); // replace the content inside the parenthesis with your hash
    

    此外,确保你的模块构建。格雷德尔和。xml文件设置正确,并且您获得了AndroidManifest上的所有必需权限。xml。 请再次查看官方说明,确保没有遗漏任何步骤-

    https://github.com/mobfox/MobFox-Android-SDK#mobfox-android-sdk-core-lib