
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
애드몹 ios/android아이디 확인 - 테스트기기 등록하고 expo start를 돌리면 testId 변수가 없다는 에러가 뜹니다
하단은 에러 전문이며
캐시리셋후 엑스포 재구동한 다음모습입니다

특이점은 상단배너광고가 들어가는 부분을 주석처리하면
// const adUnitId = __DEV__ ?
// TestIds.BANNER
하단과같이 에러 한 줄만 나오고 앱구동에는 문제가 없습니다
Error: Problem validating fields in app.json. Learn more: https://docs.expo.dev/workflow/configuration/
• should NOT have additional property 'react-native-google-mobile-ads'.
package.json에는 "react-native-google-mobile-ads": "^8.2.1",
한 줄만 있습니다
작성한 코드 및 에러 메세지
5주차초반 집파일은 지금 작업중이던 부분과 싱크가 안맞아 키파일과 앱아이디를 바꿔도 에러가 많아
원격으로 조정해주신 파일 살려서 작업중이고 진행상황은 정확히 이부분입니다import React, { useEffect } from 'react';
//이제 모든 페이지 컴포넌트들이 끼워져있는 책갈피를 메인에 둘예정이므로
//컴포넌트를 더이상 불러오지 않아도 됩니다.
// import MainPage from './pages/MainPage';
// import DetailPage from './pages/DetailPage';
import { StatusBar } from 'expo-status-bar';
//메인에 세팅할 네비게이션 도구들을 가져옵니다.
import {NavigationContainer} from '@react-navigation/native';
import StackNavigator from './navigation/StackNavigator'
import mobileAds from 'react-native-google-mobile-ads';
export default function App() {
console.disableYellowBox = true;
useEffect(()=>{
//언더바데브는 엑스포에서 기본적으로 제공해주는 환경변수설정값
//지금 엑스포에서 로컬로 코드를 돌리고있느냐를 묻는 것
//원래 이프문을 뒤집어논것 이게 거짓이냐를 묻는것
//!=부정. 코드를 돌리는게 아닐경우에만 이니셜라이즈를 하겠다고 선언하는것
//너 개발환경아닐 때 나 광고돌려버리겠다 - 애드몹사용하겠다 하는거
if(!__DEV__){
mobileAds()
.initialize()
.then(adapterStatuses => {
/
// Initialization->애드몹사용하겠다 complete!
});
}
},[])
return (
<NavigationContainer>
<StatusBar style="black" />
<StackNavigator/>
</NavigationContainer>);
}
Tip 2) Ctrl+A(맥의 경우 Command+A) 단축키로 코드를 한 번에 선택할 수 있어요!
추가로 현재 eas.json파일을 보니 eas build까지 설치했던걸 제가 깜빡했던 것 같습니다 이전 폴더에 디펜던시문제로 에러가 너무 많았어서요
이제 eas build -p android --profile development 부분을 할 차롄데 그 전 작업에서 정확히 여기 에러를 잡지못해 원격으로 튜터님이 봐주셨습니다
지금 작업중이던것은 복붙 버전에 커맨드만 빠진 파일이라
혹시 지금과 같은 상황에서 profile development설치 여부를 알 수 있을까요
{
"cli": {
"version": ">= 2.4.1"
},
"build": {
"development": {
"distribution": "internal",
"android": {
"buildType": "apk"
}
},
"preview": {
"distribution": "internal"
},
"production": {}
},
"submit": {
"production": {}
}
}
혹시 물어보실까봐 .. app.json전문입니다
{
"expo": {
"name": "Skyapp-sky",
"slug": "Skyapp-sky",
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/icon.png",
"userInterfaceStyle": "light",
"splash": {
"image": "./assets/splash.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": ["**/*"],
"ios": {
"supportsTablet": true,
"bundleIdentifier": "com.skyproject.Skyappsky"
},
"android": {
"adaptiveIcon": {
"foregroundImage": "./assets/adaptive-icon.png",
"backgroundColor": "#FFFFFF"
},
"package": "com.skyproject.Skyappsky"
},
"web": {
"favicon": "./assets/favicon.png"
},
"plugins": [
[
"expo-build-properties",
{
"ios": {
"userFrameworks": "static"
}
}
]
],
"extra": {
"eas": {
"projectId": "제아이디"
}
},
"react-native-google-mobile-ads": {
"android_app_id": "제아이디",
"ios_app_id": "제아이디"
},
"ios": {
"supportsTablet": true,
"buildNumber": "1.0.0",
"bundleIdentifier": "com.skyproject.Skyappsky",
"config": {
"googleMobileAdsAppId": "ios광고아이디"
}
},
"android": {
"adaptiveIcon": {
"foregroundImage": "./assets/adaptive-icon.png",
"backgroundColor": "#FFFFFF"
},
"package": "com.skyproject.Skyappsky",
"versionCode": 1,
"config": {
"googleMobileAdsAppId": "안드로이드광고아이디"
}
}
}
}
