我正在尝试从yersterday下午不停地添加一个简单的横幅广告到我的应用程序,它是用phonegap 3.3创建的。 我是Android的初学者,我不知道如何制作主要布局,以便它包括:phonegap视图和横幅。 我遵循这个tutotial因为描述了一个更简单的方法来添加横幅而不用uning .xml: https://support.startapp.com/entries/27804376-Adding-a-banner-with-Java-Code-instead-of-XML 现在我看到黑色背景上的广告,但没有显示手机视图。如何添加phonegap视图?
mainlayout.xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:id="@+id/
</RelativeLayout>
whatsnap.java:
public class WhatSnap extends CordovaActivity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
super.init();
StartAppSDK.init(this, "id", "id");
// StartAppAd.showSplash(this, savedInstanceState);
// StartAppAd.showSlider(this);
// Set by <content src="index.html" /> in config.xml
super.loadUrl(Config.getStartUrl());
appView.addJavascriptInterface(this, "WhatSnap");
//super.loadUrl("file:///android_asset/www/index.html")
setContentView(R.layout.mainlayout);
// Get the Main relative layout of the entire activity
RelativeLayout mainlayout = (RelativeLayout)findViewById(R.id.mainlayout);
// Define StartApp Banner
Banner startAppBanner = new Banner(this);
RelativeLayout.LayoutParams bannerParameters =
new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
bannerParameters.addRule(RelativeLayout.CENTER_HORIZONTAL);
bannerParameters.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
// Add to main Layout
mainlayout.addView(startAppBanner, bannerParameters);
}
}
我还尝试通过将其添加到我的主要布局来实现广告.xml方式:
<com.startapp.android.publish.banner.Banner
android:id="@+id/startAppBanner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"/>
所以我的布局是这样的:
但它仍然只显示黑色背景上的添加内容并且没有显示phonegap webview。
我尝试了另一种方法,首先实施phonegap webview并在新创建的布局中添加横幅代码:
Whatsnap.java: 公共类WhatSnap扩展了CordovaActivity
{
CordovaWebView cwv;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
cwv = (CordovaWebView) findViewById(R.id.tutorialView);
Config.init(this);
StartAppSDK.init(this, "id", "id");
super.loadUrl(Config.getStartUrl());
appView.addJavascriptInterface(this, "WhatSnap");
}
}
@Override
public ExecutorService getThreadPool() {
return getThreadPool();
}
main.xml中:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFFFFF"
android:baselineAligned="false"
tools:context=".MainActivity" >
<org.apache.cordova.CordovaWebView
android:id="@+id/tutorialView"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<com.startapp.android.publish.banner.Banner
android:id="@+id/startAppBanner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"/>
</RelativeLayout>
现在显示的是phonegap webview,但广告横幅为:(
********编辑: 我试着用2天时间在我的ap中实现一个简单的广告横幅。为此我按照说明从这里实现了phonegap作为webview: docs.phonegap.com/en/3.3.0/... 我还将所需的横幅代码包含在我的主要布局中:
<com.startapp.android.publish.banner.Banner
android:id="@+id/startAppBanner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"/>
Everythings显示出很好的效果,但是在将phonegap作为webview(在1步中)之后,暂停和恢复事件从phonegap停止工作,我在logcat中得到这些行:
07-10 12:10:10.368: D/CordovaActivity(20511): Paused the application!
07-10 12:10:10.368: D/CordovaWebView(20511): Handle the pause
07-10 12:10:10.378: D/CordovaLog(20511): null: Line 1 : exception firing resume event from native
07-10 12:10:10.378: I/Web Console(20511): exception firing resume event from native at null:1
07-10 12:10:10.383: D/CordovaLog(20511): null: Line 1 : exception firing pause event from native
07-10 12:10:10.383: I/Web Console(20511): exception firing pause event from native at null:1
07-10 12:10:10.483: E/JavaBinder(20511): !!! FAILED BINDER TRANSACTION !!!
这是我的主要活动:
public class WhatSnap extends CordovaActivity
{
CordovaWebView cwv;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
super.init();
StartAppSDK.init(this, "id", "id");
appView.addJavascriptInterface(this, "WhatSnap");
setContentView(R.layout.main);
cwv = (CordovaWebView) findViewById(R.id.tutorialView);
Config.init(this);
cwv.loadUrl(Config.getStartUrl());
}
@Override
public ExecutorService getThreadPool() {
return getThreadPool();
}
到目前为止这是我的布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:baselineAligned="false">
<org.apache.cordova.CordovaWebView
android:id="@+id/tutorialView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<com.startapp.android.publish.banner.Banner
android:id="@+id/startAppBanner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"/>
</RelativeLayout>
请帮忙!
答案 0 :(得分:1)
我尝试在屏幕上展示广告,这会在您尝试的页脚中显示广告。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<org.apache.cordova.CordovaWebView
android:id="@+id/tutorialView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" />
<com.startapp.android.publish.banner.Banner
android:id="@+id/startAppBanner"
android:layout_width="fill_parent"
android:layout_height="50dp" />
</LinearLayout>
让我知道广告中的任何问题都没有在视图或其他任何内容中加载。