我正在尝试将一个丛林广告整合到我的Android应用中。几天前我的广告正在运行,从那以后我只改变了一些xml布局。现在vungle应用程序没有加载。 vungle事件监听器在运行adUnavaliable部分下的代码时起作用。
我注意到当我将光标悬停在vunglepub.playAd()上时会出现一条消息;代码行。
此消息是: 注意:此元素既没有附加源也没有附加Javadoc,因此找不到Javadoc。
我不确定这意味着什么。
以下是此部分的代码:
public class FinishActivity extends android.app.Activity {
// get the VunglePub instance
final VunglePub vunglePub = VunglePub.getInstance();
//setting a different score for the application in order to give back to the previouos screen after ad was played
int score1 = 0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.endscreen);
vunglePub.setEventListener(vungleListener);
final int score = getIntent().getIntExtra("finalscore", -1);
score1 = score;
final View restart = findViewById(R.id.restartButton);
final View continueButton = findViewById(R.id.continueButton);
final TextView scorefinal = (TextView) findViewById(R.id.finalscore);
scorefinal.setText("Your Score: " + score);
restart.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//if restarting thescore use this
Intent menuIntent = new Intent("com.nordquistproduction.robberducky.StartProgram");
startActivity(menuIntent);
finish();
}
});
continueButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//playing add
vunglePub.playAd();
}
});
}
private final EventListener vungleListener = new EventListener(){
@Override
public void onAdEnd(boolean wasCallToActionClicked) {
// Called when the user leaves the ad and control is returned to your application
/// if keeping the score use this
Intent intent = new Intent(getApplicationContext(), StartProgram.class);
intent.putExtra("startingscore", score1);
startActivity(intent);
finish();
}
@Override
public void onAdStart() {
// TODO Auto-generated method stub
}
@Override
public void onAdUnavailable(String arg0) {
// TODO Auto-generated method stub
finish();
}
@Override
public void onCachedAdAvailable() {
// TODO Auto-generated method stub
}
@Override
public void onVideoView(boolean arg0, int arg1, int arg2) {
// TODO Auto-generated method stub
}
};
@Override
protected void onPause() {
super.onPause();
vunglePub.onPause();
}
@Override
protected void onResume() {
super.onResume();
vunglePub.onResume();
}
我对此广告不再有效以及有关java文档的消息的含义感到非常困惑。
请帮忙!我现在已经坚持了一两天。
答案 0 :(得分:0)
这条消息正是它所说的。没有为实际定义它的方法提供javadoc注释。
/**
*This is java doc
*This method does something
*/
public void doSomething(){
System.out.println("Do something");
}
当您在eclipse或其他支持类似功能的IDE中鼠标悬停此方法时,将向您提供有关该方法的信息。可以包含各种注释以指定有关参数和返回类型的信息。 java doc也可以生成一个可以浏览的文件。例如:http://docs.oracle.com/javase/7/docs/api/
此外,您可能无法从项目中包含的jar文件中看到java doc代码,因为它正在访问已编译的.class文件而不是.java。如果您真的想要java文档并且jar是开源的,您可以下载源代码并将其附加如下(假设您使用的是Eclipse):
这不仅可以让您查看java文档,还可以让您逐步调试在调试器中导入的代码。虽然您通常不需要这样做,但在某些情况下,您可能会在该代码中发现错误。
关于您的代码无效的另一个问题是无关的。如果您还没有这样做,我强烈建议您控制代码版本。 git是我推荐的(虽然它对初学者来说可能很粗糙,但如果你是代码库的唯一贡献者,你就会遇到人们所困扰的大多数错综复杂的问题)。使用版本控制,您可以简单地重置为程序的先前稳定版本,并尝试弄清楚如何从那里打破它。除了能够清楚地知道你在这两个提交之间实际改变了什么。
答案 1 :(得分:-1)
@Roger是关于javadoc警告的,但要解决您的其他问题(关于Vungle广告没有加载),您想要仔细检查您是否正在运行init
方法尽可能早地在你的vunglePub对象上。
您可以在onCreate期间(在设置事件监听器之前)调用它,以确保广告在您需要向用户显示时已缓存并准备播放:
public void onCreate(Bundle savedInstanceState) {
...
vunglePub.init(this, "yourVungleAppId");
vunglePub.setEventListener(vungleListener);
...
}
希望有所帮助!