1 /*
2 * Copyright (c) 2021 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16 #include "main_ability.h"
17 #include "hilog_wrapper.h"
18 #include "test_utils.h"
19
20 namespace OHOS {
21 namespace AppExecFwk {
22 using namespace OHOS::EventFwk;
23 namespace {
24 const int MainAbilityACode = 100;
25 constexpr int index_f = 0;
26 constexpr int index_s = 1;
27 constexpr int index_t = 2;
28 constexpr int numThree = 3;
29 }
30
Init(const std::shared_ptr<AbilityInfo> & abilityInfo,const std::shared_ptr<OHOSApplication> & application,std::shared_ptr<AbilityHandler> & handler,const sptr<IRemoteObject> & token)31 void MainAbility::Init(const std::shared_ptr<AbilityInfo> &abilityInfo,
32 const std::shared_ptr<OHOSApplication> &application, std::shared_ptr<AbilityHandler> &handler,
33 const sptr<IRemoteObject> &token)
34 {
35 HILOG_INFO("MainAbility::Init");
36 Ability::Init(abilityInfo, application, handler, token);
37 }
38
~MainAbility()39 MainAbility::~MainAbility()
40 {
41 CommonEventManager::UnSubscribeCommonEvent(subscriber_);
42 }
43
OnStart(const Want & want)44 void MainAbility::OnStart(const Want &want)
45 {
46 HILOG_INFO("MainAbility::onStart");
47 SubscribeEvent();
48 Ability::OnStart(want);
49 TestUtils::PublishEvent(g_EVENT_RESP_FIRST_LIFECYCLE, MainAbilityACode, "onStart");
50 }
51
OnStop()52 void MainAbility::OnStop()
53 {
54 HILOG_INFO("MainAbility::OnStop");
55 Ability::OnStop();
56 CommonEventManager::UnSubscribeCommonEvent(subscriber_);
57 TestUtils::PublishEvent(g_EVENT_RESP_FIRST_LIFECYCLE, MainAbilityACode, "OnStop");
58 }
59
OnActive()60 void MainAbility::OnActive()
61 {
62 HILOG_INFO("MainAbility::OnActive");
63 Ability::OnActive();
64 TestUtils::PublishEvent(g_EVENT_RESP_FIRST_LIFECYCLE, MainAbilityACode, "OnActive");
65 }
66
OnInactive()67 void MainAbility::OnInactive()
68 {
69 HILOG_INFO("MainAbility::OnInactive");
70 Ability::OnInactive();
71 TestUtils::PublishEvent(g_EVENT_RESP_FIRST_LIFECYCLE, MainAbilityACode, "OnInactive");
72 }
73
OnBackground()74 void MainAbility::OnBackground()
75 {
76 HILOG_INFO("MainAbility::OnBackground");
77 Ability::OnBackground();
78 TestUtils::PublishEvent(g_EVENT_RESP_FIRST_LIFECYCLE, MainAbilityACode, "OnBackground");
79 }
80
OnForeground(const Want & want)81 void MainAbility::OnForeground(const Want &want)
82 {
83 HILOG_INFO("MainAbility::OnForeground");
84 Ability::OnForeground(want);
85 TestUtils::PublishEvent(g_EVENT_RESP_FIRST_LIFECYCLE, MainAbilityACode, "OnForeground");
86 }
87
OnAbilityResult(int requestCode,int resultCode,const Want & resultData)88 void MainAbility::OnAbilityResult(int requestCode, int resultCode, const Want &resultData)
89 {
90 HILOG_INFO("MainAbility::OnAbilityResult");
91 Ability::OnAbilityResult(requestCode, resultCode, resultData);
92 TestUtils::PublishEvent(g_EVENT_RESP_FIRST_ON_ABILITY_RESULT, 0, resultData.ToUri());
93 }
94
OnBackPressed()95 void MainAbility::OnBackPressed()
96 {
97 HILOG_INFO("MainAbility::OnBackPressed");
98 Ability::OnBackPressed();
99 TestUtils::PublishEvent(g_EVENT_RESP_FIRST_ON_BACK_PRESSED, 0, "");
100 }
101
OnNewWant(const Want & want)102 void MainAbility::OnNewWant(const Want &want)
103 {
104 HILOG_INFO("MainAbility::OnNewWant");
105 Ability::OnNewWant(want);
106 TestUtils::PublishEvent(g_EVENT_RESP_FIRST_ON_NEW_WANT, 0, want.ToUri());
107 }
108
SubscribeEvent()109 void MainAbility::SubscribeEvent()
110 {
111 std::vector<std::string> eventList = {
112 g_EVENT_REQU_FIRST,
113 };
114 MatchingSkills matchingSkills;
115 for (const auto &e : eventList) {
116 matchingSkills.AddEvent(e);
117 }
118 CommonEventSubscribeInfo subscribeInfo(matchingSkills);
119 subscribeInfo.SetPriority(1);
120 subscriber_ = std::make_shared<FirstEventSubscriber>(subscribeInfo);
121 subscriber_->mainAbility = this;
122 CommonEventManager::SubscribeCommonEvent(subscriber_);
123 }
124
OnReceiveEvent(const CommonEventData & data)125 void FirstEventSubscriber::OnReceiveEvent(const CommonEventData &data)
126 {
127 HILOG_INFO("FirstEventSubscriber::OnReceiveEvent:event=%{public}s", data.GetWant().GetAction().c_str());
128 HILOG_INFO("FirstEventSubscriber::OnReceiveEvent:data=%{public}s", data.GetData().c_str());
129 HILOG_INFO("FirstEventSubscriber::OnReceiveEvent:code=%{public}d", data.GetCode());
130 auto eventName = data.GetWant().GetAction();
131 if (std::strcmp(eventName.c_str(), g_EVENT_REQU_FIRST.c_str()) == 0) {
132 auto target = data.GetData();
133 auto caseInfo = TestUtils::split(target, "_");
134 if (caseInfo.size() < numThree) {
135 return;
136 }
137 if (mapTestFunc_.find(caseInfo[index_f]) != mapTestFunc_.end()) {
138 mapTestFunc_[caseInfo[index_f]](std::stoi(caseInfo[index_s]), std::stoi(caseInfo[index_t]), data.GetCode());
139 } else {
140 HILOG_INFO("OnReceiveEvent: CommonEventData error(%{public}s)", target.c_str());
141 }
142 }
143 }
144
TestAbility(int apiIndex,int caseIndex,int code)145 void MainAbility::TestAbility(int apiIndex, int caseIndex, int code)
146 {
147 HILOG_INFO("MainAbility::TestAbility");
148 if (mapCase_.find(apiIndex) != mapCase_.end()) {
149 if (caseIndex < (int)mapCase_[apiIndex].size()) {
150 mapCase_[apiIndex][caseIndex](code);
151 }
152 }
153 }
154
GetApplicationInfoCase1(int code)155 void MainAbility::GetApplicationInfoCase1(int code)
156 {
157 auto appInfo = AbilityContext::GetApplicationInfo();
158 string result = "";
159 if (appInfo != nullptr) {
160 result = appInfo->name;
161 }
162
163 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
164 }
GetApplicationInfoCase2(int code)165 void MainAbility::GetApplicationInfoCase2(int code)
166 {
167 auto appInfo = AbilityContext::GetApplicationInfo();
168 string result = "";
169 if (appInfo != nullptr) {
170 result = appInfo->name;
171 }
172
173 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
174 }
GetApplicationInfoCase3(int code)175 void MainAbility::GetApplicationInfoCase3(int code)
176 {
177 auto appInfo = AbilityContext::GetApplicationInfo();
178 string result = "";
179 if (appInfo != nullptr) {
180 result = appInfo->name;
181 }
182
183 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
184 }
185
GetCacheDirCase1(int code)186 void MainAbility::GetCacheDirCase1(int code)
187 {
188 string cacheDir = AbilityContext::GetCacheDir();
189 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, cacheDir);
190 }
GetCacheDirCase2(int code)191 void MainAbility::GetCacheDirCase2(int code)
192 {
193 string cacheDir = AbilityContext::GetCacheDir();
194 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, cacheDir);
195 }
GetCacheDirCase3(int code)196 void MainAbility::GetCacheDirCase3(int code)
197 {
198 string cacheDir = AbilityContext::GetCacheDir();
199 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, cacheDir);
200 }
201
GetDatabaseDirCase1(int code)202 void MainAbility::GetDatabaseDirCase1(int code)
203 {
204 string databaseDir = AbilityContext::GetDatabaseDir();
205 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, databaseDir);
206 }
GetDatabaseDirCase2(int code)207 void MainAbility::GetDatabaseDirCase2(int code)
208 {
209 string databaseDir = AbilityContext::GetDatabaseDir();
210 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, databaseDir);
211 }
GetDatabaseDirCase3(int code)212 void MainAbility::GetDatabaseDirCase3(int code)
213 {
214 string databaseDir = AbilityContext::GetDatabaseDir();
215 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, databaseDir);
216 }
217
GetDataDirCase1(int code)218 void MainAbility::GetDataDirCase1(int code)
219 {
220 string dataDir = AbilityContext::GetDataDir();
221 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, dataDir);
222 }
223
GetDataDirCase2(int code)224 void MainAbility::GetDataDirCase2(int code)
225 {
226 string dataDir = AbilityContext::GetDataDir();
227 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, dataDir);
228 }
229
GetDataDirCase3(int code)230 void MainAbility::GetDataDirCase3(int code)
231 {
232 string dataDir = AbilityContext::GetDataDir();
233 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, dataDir);
234 }
235
GetDirCase1(int code)236 void MainAbility::GetDirCase1(int code)
237 {
238 string name = "getDir";
239 string dir = AbilityContext::GetDir(name, 0);
240 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, dir);
241 }
242
GetDirCase2(int code)243 void MainAbility::GetDirCase2(int code)
244 {
245 string name = "getDir";
246 string dir = AbilityContext::GetDir(name, 0);
247 dir = AbilityContext::GetDir(name, 0);
248 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, dir);
249 }
250
GetDirCase3(int code)251 void MainAbility::GetDirCase3(int code)
252 {
253 string name = "getDir";
254 string dir = AbilityContext::GetDir(name, 0);
255 dir = AbilityContext::GetDir(name, 0);
256 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, dir);
257 }
258
GetNoBackupFilesDirCase1(int code)259 void MainAbility::GetNoBackupFilesDirCase1(int code)
260 {}
261
GetBundleManagerCase1(int code)262 void MainAbility::GetBundleManagerCase1(int code)
263 {
264 auto bundleManger = AbilityContext::GetBundleManager();
265 int result = 1;
266 if (bundleManger == nullptr)
267 result = 0;
268 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, std::to_string(result));
269 }
270
VerifyCallingPermissionCase1(int code)271 void MainAbility::VerifyCallingPermissionCase1(int code)
272 {}
273
VerifyPermissionCase1(int code)274 void MainAbility::VerifyPermissionCase1(int code)
275 {}
276
VerifySelfPermissionCase1(int code)277 void MainAbility::VerifySelfPermissionCase1(int code)
278 {}
279
GetBundleCodePathCase1(int code)280 void MainAbility::GetBundleCodePathCase1(int code)
281 {
282 string bundleCodePath = AbilityContext::GetBundleCodePath();
283 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, bundleCodePath);
284 }
285
GetBundleCodePathCase2(int code)286 void MainAbility::GetBundleCodePathCase2(int code)
287 {
288 string bundleCodePath = AbilityContext::GetBundleCodePath();
289 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, bundleCodePath);
290 }
291
GetBundleCodePathCase3(int code)292 void MainAbility::GetBundleCodePathCase3(int code)
293 {
294 string bundleCodePath = AbilityContext::GetBundleCodePath();
295 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, bundleCodePath);
296 }
297
GetBundleNameCase1(int code)298 void MainAbility::GetBundleNameCase1(int code)
299 {
300 string bundleName = AbilityContext::GetBundleName();
301 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, bundleName);
302 }
303
GetBundleNameCase2(int code)304 void MainAbility::GetBundleNameCase2(int code)
305 {
306 string bundleName = AbilityContext::GetBundleName();
307 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, bundleName);
308 }
309
GetBundleNameCase3(int code)310 void MainAbility::GetBundleNameCase3(int code)
311 {
312 string bundleName = AbilityContext::GetBundleName();
313 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, bundleName);
314 }
315
GetBundleResourcePathCase1(int code)316 void MainAbility::GetBundleResourcePathCase1(int code)
317 {
318 string bundleResourcePath = AbilityContext::GetBundleResourcePath();
319 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, bundleResourcePath);
320 }
321
GetBundleResourcePathCase2(int code)322 void MainAbility::GetBundleResourcePathCase2(int code)
323 {
324 string bundleResourcePath = AbilityContext::GetBundleResourcePath();
325 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, bundleResourcePath);
326 }
327
GetBundleResourcePathCase3(int code)328 void MainAbility::GetBundleResourcePathCase3(int code)
329 {
330 string bundleResourcePath = AbilityContext::GetBundleResourcePath();
331 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, bundleResourcePath);
332 }
333
CanRequestPermissionCase1(int code)334 void MainAbility::CanRequestPermissionCase1(int code)
335 {}
336
GetCallingAbilityCase1(int code)337 void MainAbility::GetCallingAbilityCase1(int code)
338 {
339 string targetBundle = "com.ohos.amsst.AppKitA";
340 string targetAbility = "SecondAbility";
341 Want want;
342 want.SetElementName(targetBundle, targetAbility);
343 want.SetParam("operator", 0);
344 StartAbility(want);
345 }
346
GetCallingAbilityCase2(int code)347 void MainAbility::GetCallingAbilityCase2(int code)
348 {
349 string targetBundle1 = "com.ohos.amsst.AppKitA";
350 string targetAbility1 = "SecondAbility";
351 Want want;
352 want.SetElementName(targetBundle1, targetAbility1);
353 want.SetParam("operator", 0);
354 StartAbility(want);
355
356 string targetBundle2 = "com.ohos.amsst.AppKitB";
357 string targetAbility2 = "MainAbility";
358 want.SetElementName(targetBundle2, targetAbility2);
359 want.SetParam("operator", 0);
360 StartAbility(want);
361 }
362
GetCallingAbilityCase3(int code)363 void MainAbility::GetCallingAbilityCase3(int code)
364 {
365 string targetBundle = "com.ohos.amsst.AppKitA";
366 string targetAbility = "SecondAbility";
367 Want want;
368 want.SetElementName(targetBundle, targetAbility);
369 want.SetParam("operator", 0);
370 StartAbility(want);
371 }
372
GetContextCase1(int code)373 void MainAbility::GetContextCase1(int code)
374 {
375 auto context = AbilityContext::GetContext();
376 string result = "0";
377 if (context != nullptr)
378 result = "1";
379 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
380 }
381
GetAbilityManagerCase1(int code)382 void MainAbility::GetAbilityManagerCase1(int code)
383 {
384 auto abilityManger = AbilityContext::GetAbilityManager();
385 string result = "0";
386 if (abilityManger != nullptr)
387 result = "1";
388 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
389 }
390
GetProcessInfoCase1(int code)391 void MainAbility::GetProcessInfoCase1(int code)
392 {
393 auto processInfo = AbilityContext::GetProcessInfo();
394 string result = "";
395 if (processInfo != nullptr) {
396 result = processInfo->GetProcessName();
397 }
398
399 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
400 }
401
GetProcessInfoCase2(int code)402 void MainAbility::GetProcessInfoCase2(int code)
403 {
404 auto processInfo = AbilityContext::GetProcessInfo();
405 string result = "";
406 if (processInfo != nullptr) {
407 result = processInfo->GetProcessName();
408 }
409
410 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
411 }
412
GetProcessInfoCase3(int code)413 void MainAbility::GetProcessInfoCase3(int code)
414 {
415 auto processInfo = AbilityContext::GetProcessInfo();
416 string result = "";
417 if (processInfo != nullptr) {
418 result = processInfo->GetProcessName();
419 }
420
421 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
422 }
423
GetAppTypeCase1(int code)424 void MainAbility::GetAppTypeCase1(int code)
425 {
426 string appType = AbilityContext::GetAppType();
427 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, appType);
428 }
429
GetAppTypeCase2(int code)430 void MainAbility::GetAppTypeCase2(int code)
431 {
432 string appType = AbilityContext::GetAppType();
433 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, appType);
434 }
435
GetAppTypeCase3(int code)436 void MainAbility::GetAppTypeCase3(int code)
437 {
438 string appType = AbilityContext::GetAppType();
439 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, appType);
440 }
441
GetCallingBundleCase1(int code)442 void MainAbility::GetCallingBundleCase1(int code)
443 {
444 string targetBundle = "com.ohos.amsst.AppKitA";
445 string targetAbility = "SecondAbility";
446 Want want;
447 want.SetElementName(targetBundle, targetAbility);
448 want.SetParam("operator", 0);
449 StartAbility(want);
450 }
451
GetCallingBundleCase2(int code)452 void MainAbility::GetCallingBundleCase2(int code)
453 {
454 string targetBundle1 = "com.ohos.amsst.AppKitA";
455 string targetAbility1 = "SecondAbility";
456 Want want;
457 want.SetElementName(targetBundle1, targetAbility1);
458 want.SetParam("operator", 0);
459 StartAbility(want);
460
461 string targetBundle2 = "com.ohos.amsst.AppKitB";
462 string targetAbility2 = "MainAbility";
463 want.SetElementName(targetBundle2, targetAbility2);
464 want.SetParam("operator", 0);
465 StartAbility(want);
466 }
467
GetCallingBundleCase3(int code)468 void MainAbility::GetCallingBundleCase3(int code)
469 {
470 string targetBundle = "com.ohos.amsst.AppKitA";
471 string targetAbility = "SecondAbility";
472 Want want;
473 want.SetElementName(targetBundle, targetAbility);
474 want.SetParam("operator", 0);
475 StartAbility(want);
476 }
477
StartAbilityCase1(int code)478 void MainAbility::StartAbilityCase1(int code)
479 {
480 std::map<std::string, std::string> params;
481 Want want = TestUtils::MakeWant("", "SecondAbility", "com.ohos.amsst.AppKitA", params);
482 AbilityContext::StartAbility(want, 1);
483 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, "startAbility");
484 }
485
StartAbilityCase2(int code)486 void MainAbility::StartAbilityCase2(int code)
487 {
488 std::map<std::string, std::string> params;
489 Want want = TestUtils::MakeWant("", "MainAbility", "com.ohos.amsst.AppKitB", params);
490 AbilityContext::StartAbility(want, 1);
491 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, "startAbility");
492 }
493
TerminateAbilityCase1(int code)494 void MainAbility::TerminateAbilityCase1(int code)
495 {
496 AbilityContext::TerminateAbility();
497 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, "TerminateAbility");
498 }
499
GetElementNameCase1(int code)500 void MainAbility::GetElementNameCase1(int code)
501 {
502 auto elementName = AbilityContext::GetElementName();
503 string result = "";
504 if (elementName != nullptr)
505 result = elementName->GetBundleName();
506 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
507 }
508
GetElementNameCase2(int code)509 void MainAbility::GetElementNameCase2(int code)
510 {
511 auto elementName = AbilityContext::GetElementName();
512 string result = "";
513 if (elementName != nullptr)
514 result = elementName->GetBundleName();
515 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
516 }
517
GetElementNameCase3(int code)518 void MainAbility::GetElementNameCase3(int code)
519 {
520 auto elementName = AbilityContext::GetElementName();
521 string result = "";
522 if (elementName != nullptr)
523 result = elementName->GetBundleName();
524 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
525 }
526
GetHapModuleInfoCase1(int code)527 void MainAbility::GetHapModuleInfoCase1(int code)
528 {
529 auto elementName = AbilityContext::GetHapModuleInfo();
530 string result = "";
531 if (elementName != nullptr)
532 result = elementName->moduleName;
533 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
534 }
535
GetHapModuleInfoCase2(int code)536 void MainAbility::GetHapModuleInfoCase2(int code)
537 {
538 auto elementName = AbilityContext::GetHapModuleInfo();
539 string result = "";
540 if (elementName != nullptr)
541 result = elementName->moduleName;
542 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
543 }
544
GetHapModuleInfoCase3(int code)545 void MainAbility::GetHapModuleInfoCase3(int code)
546 {
547 auto elementName = AbilityContext::GetHapModuleInfo();
548 string result = "";
549 if (elementName != nullptr)
550 result = elementName->moduleName;
551 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
552 }
553
GetCodeCacheDirCase1(int code)554 void MainAbility::GetCodeCacheDirCase1(int code)
555 {
556 string codeCacheDir = AbilityContext::GetCodeCacheDir();
557 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, codeCacheDir);
558 }
GetCodeCacheDirCase2(int code)559 void MainAbility::GetCodeCacheDirCase2(int code)
560 {
561 string codeCacheDir = AbilityContext::GetCodeCacheDir();
562 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, codeCacheDir);
563 }
GetCodeCacheDirCase3(int code)564 void MainAbility::GetCodeCacheDirCase3(int code)
565 {
566 string codeCacheDir = AbilityContext::GetCodeCacheDir();
567 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, codeCacheDir);
568 }
569
GetApplicationContextCase1(int code)570 void MainAbility::GetApplicationContextCase1(int code)
571 {
572 auto elementName = AbilityContext::GetApplicationContext();
573 string result = "";
574 if (elementName != nullptr)
575 result = "1";
576 TestUtils::PublishEvent(g_EVENT_RESP_FIRST, code, result);
577 }
578
579 REGISTER_AA(MainAbility)
580 } // namespace AppExecFwk
581 } // namespace OHOS
582