Android广告请求。字符串数组的关键字

时间:2013-11-21 01:19:19

标签: java android arrays admob

我正在尝试将存储在R.array.list中的数组列表中的每个项目添加到admob的adrequest中。当我记录adrequest时,我得到类似“com.google.ads.AdRequest@42168310”的内容。这看起来不对,因为我在输出请求时曾经得到一个实际的列表,我曾经通过这样做手动添加java中的每个项目:

adRequest.addKeyword("thisisakeyword");

以下是我现在正在尝试的内容:

keyWords = getResources().getStringArray(R.array.key_words);

    int count = 0;
    while (count < keyWords.length) {
        adRequest.addKeyword(keyWords[count]);
        count++;
    }
    System.out.println(String.valueOf(adRequest.toString()));

任何想法?

2 个答案:

答案 0 :(得分:0)

自己想出来。任何人都会遇到这个问题。诀窍是将数组添加到集合中,然后将该集合添加到广告请求中。

    AdRequest adRequest = new AdRequest();
    String[] keywords = getResources().getStringArray(R.array.key_words);
    Set<String> set = new HashSet<String>();
    int count = 0;
    while (count < keywords.length) {
        set.add(keywords[count]);
        count++;
    }
    adRequest.addKeywords(set);
    adView.loadAd(adRequest);

答案 1 :(得分:0)

我在尝试做同样的事情时遇到了这个问题,并意识到它过于复杂并且你正在创造不必要的变量。您实际上并不需要创建一个集合或计数器。

请改为尝试:

Builder adRequestBuilder = new AdRequest.Builder();
String[] keywords = getResources().getStringArray(R.array.key_words);
for (String keyword : keywords) {
    adRequestBuilder.addKeyword(keyword);
}

希望这有帮助。