I try to make APP Mobile Campaign. but if i regist mobileApplication i always
got 'faultString: [CriterionError.CANNOT_ADD_CRITERIA_TYPE @
operations[3].operand.criterion]' Message.
What thing i miss? Please Let me know
BudgetServiceInterface budgetService =
adWordsServices.get(session,BudgetServiceInterface.class);
Budget sharedBudget = new Budget();
sharedBudget.setName("Test budget");
Money budgetAmount = new Money();
budgetAmount.setMicroAmount(50000000L);
sharedBudget.setAmount(budgetAmount);
sharedBudget.setDeliveryMethod(BudgetBudgetDeliveryMethod.STANDARD);
sharedBudget.setIsExplicitlyShared(false);
BudgetOperation budgetOperation = new BudgetOperation();
budgetOperation.setOperand(sharedBudget);
budgetOperation.setOperator(Operator.ADD);
Long budgetId = budgetService.mutate(new BudgetOperation[]
{budgetOperation}).getValue(0).getBudgetId();
CampaignServiceInterface campaignService =
adWordsServices.get(session,CampaignServiceInterface.class);
Campaign campaign = new Campaign();
campaign.setName("Test Cam");
campaign.setStatus(CampaignStatus.PAUSED);
BiddingStrategyConfiguration biddingStrategyConfiguration = new
BiddingStrategyConfiguration();
biddingStrategyConfiguration.setBiddingStrategyType(BiddingStrategyType.TARGET_CPA);
Money bidMoney = new Money();
bidMoney.setMicroAmount(10000000L);
TargetCpaBiddingScheme biddingScheme = new TargetCpaBiddingScheme();
biddingScheme.setTargetCpa(bidMoney);
biddingStrategyConfiguration.setBiddingScheme(biddingScheme);
campaign.setBiddingStrategyConfiguration(biddingStrategyConfiguration);
campaign.setStartDate(new DateTime().plusDays(1).toString("yyyyMMdd"));
campaign.setEndDate(new DateTime().plusDays(30).toString("yyyyMMdd"));
campaign.setAdServingOptimizationStatus(AdServingOptimizationStatus.OPTIMIZE);
//campaign.setFrequencyCap(new FrequencyCap(5L,TimeUnit.DAY,Level.ADGROUP));
campaign.setAdvertisingChannelType(AdvertisingChannelType.DISPLAY);
campaign.setAdvertisingChannelSubType(AdvertisingChannelSubType.DISPLAY_MOBILE_APP);
Budget budget = new Budget();
budget.setBudgetId(budgetId);
campaign.setBudget(budget);
CampaignOperation operation = new CampaignOperation();
operation.setOperand(campaign);
operation.setOperator(Operator.ADD);
CampaignOperation[] operations = new CampaignOperation[] {operation};
CampaignReturnValue result = campaignService.mutate(operations);
Long uid = result.getValue(0).getId();
CampaignCriterionServiceInterface campaignCriterionService =
adWordsServices.get(session,CampaignCriterionServiceInterface.class);
OperatingSystemVersion osVersion = new OperatingSystemVersion();
osVersion.setId(630277L);
Location korea = new Location();
korea.setId(2410L);
Language korean = new Language();
korean.setId(1012L);
MobileApplication mobileApplication = new MobileApplication();
mobileApplication.setAppId("2-com.nhnent.payapp");
mobileApplication.setDisplayName("PAYCO ");
List<Criterion> criterionList =
Lists.newArrayList(osVersion,korea,korean,mobileApplication);
List<CampaignCriterionOperation> criterionOperations = new
ArrayList<CampaignCriterionOperation>();
criterionList.forEach(value -> {
CampaignCriterionOperation tmpOperation = new CampaignCriterionOperation();
CampaignCriterion tmpCriterion = new CampaignCriterion();
tmpCriterion.setCampaignId(uid);
tmpCriterion.setCriterion(value);
tmpOperation.setOperand(tmpCriterion);
tmpOperation.setOperator(Operator.ADD);
criterionOperations.add(tmpOperation);
});
CampaignCriterionReturnValue campaignCriterionRetVal =
campaignCriterionService.mutate(criterionOperations.toArray(new
CampaignCriterionOperation[criterionOperations.size()]));
--
--
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog and Google+:
https://googleadsdeveloper.blogspot.com/
https://plus.google.com/+GoogleAdsDevelopers/posts
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
You received this message because you are subscribed to the Google
Groups "AdWords API Forum" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/adwords-api?hl=en
---
You received this message because you are subscribed to the Google Groups
"AdWords API Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
Visit this group at https://groups.google.com/group/adwords-api.
To view this discussion on the web visit
https://groups.google.com/d/msgid/adwords-api/ced70bd3-c588-4142-b178-1e38e7db15be%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.