0
我想在Android中意圖展示新活動時點擊列表項目的點擊偵聽器,以啓動StartApp Ads。但是這對我來說並不適用。StartApp廣告未在listitem上展示請點擊
在第一種方法中的代碼是好的,但不橫幅顯示和在second method顯示橫幅是投擲NullPointerException
//第一方法
startAppAd.showAd();
startAppAd.loadAd();
//第二方法
startAppAd.loadAd(new AdEventListener() {
@Override
public void onReceiveAd(Ad ad) {
System.out.println("Ad received");
Log.d("MISSION", "on load To Receive Ad");
startAppAd.showAd();
}
@Override
public void onFailedToReceiveAd(Ad arg0) {
Log.d("MISSION", "on Failed To Receive Ad");
}
});
異常:
09-01 15:33:23.345: E/AndroidRuntime(25452): java.lang.NullPointerException
09-01 15:33:23.345: E/AndroidRuntime(25452): at android.view.ViewConfiguration.get(ViewConfiguration.java:332)
09-01 15:33:23.345: E/AndroidRuntime(25452): at com.startapp.android.publish.StartAppAd.load(StartAppSDK:133)
09-01 15:33:23.345: E/AndroidRuntime(25452): at com.startapp.android.publish.StartAppAd.loadAd(StartAppSDK:316)
09-01 15:33:23.345: E/AndroidRuntime(25452): at com.startapp.android.publish.StartAppAd.loadAd(StartAppSDK:289)
09-01 15:33:23.345: E/AndroidRuntime(25452): at com.rptl.customgrammartopic.list.GrammarTopics$1.onItemClick(GrammarTopics.java:129)
09-01 15:33:23.345: E/AndroidRuntime(25452): at android.widget.AdapterView.performItemClick(AdapterView.java:301)
完整代碼描述:
MainActivity: -
public class MainActivity extends Activity {
private DrawerLayout drawerLayout;
private ListView drawerList;
private ActionBarDrawerToggle drawerToggles;
private String[] menuTitles;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
StartAppSDK.init(this, "*********", true);
setContentView(R.layout.activity_main);
}
}
類含有的ListView
public class GrammarTopics extends Fragment {
private StartAppAd startAppAd = new StartAppAd(getActivity());
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.grammartopics, null);
ListView listview = (ListView)view.findViewById(R.id.lv_grammartopic);
listview.setAdapter(new CustomAdapter(getActivity(),
grammartopics_array, grammardes_array,icon_array));
listview.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
if (position == 0) {
// First method to be show Ads.
Intent i = new Intent(getActivity(), Articles.class);
startActivity(i);
startAppAd.showAd();
startAppAd.loadAd();
} else if (position == 1) {
// Second method to be show Ads.
Intent i = new Intent(getActivity(), Adjectives.class);
startActivity(i);
startAppAd.loadAd(new AdEventListener() {
@Override
public void onReceiveAd(Ad ad) {
Log.d("MISSION", "on load To Receive Ad");
startAppAd.showAd();
}
@Override
public void onFailedToReceiveAd(Ad arg0) {
Log.d("MISSION", "on Failed To Receive Ad");
}
});
}
@Override
public void onResume() {
super.onResume();
startAppAd.onResume();
}
@Override
public void onPause() {
super.onPause();
startAppAd.onPause();
}
@Override
public void onBackPressed() {
startAppAd.onBackPressed();
super.onBackPressed();
}
清單文件: -
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<activity
android:name="com.startapp.android.publish.list3d.List3DActivity"
android:theme="@android:style/Theme" />
<activity
android:name="com.startapp.android.publish.OverlayActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@android:style/Theme.Translucent" />
<activity
android:name="com.startapp.android.publish.FullScreenActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@android:style/Theme" />
我遵循here的StartApp文檔。
非常感謝@Boss它的工作一樣!爲它+1。 –
樂意幫忙:) – Emil
@老闆是老闆:P –