Guideline 2.1 - Performance - App Completeness

We are unable to complete the review of your app because one or more of your in-app purchase products have not been submitted for review.

Next Steps

To resolve this issue, please be sure to take action and submit your in-app purchases and upload a new binary in App Store Connect so we can proceed with our review.

Resources

Learn more about how to offer in-app purchases in App Store Connect Developer Help.

 

Overview for configuring in-app purchases - Configure in-app purchase settings - App Store Connect - Help - Apple Developer

Configure in-app purchase settings Overview for configuring in-app purchases In-app purchases let you offer extra content and features — including digital goods, subscriptions, and premium content — directly within your app on all Apple platforms. Ther

developer.apple.com

 

위와 같은 앱의 리젝 사유를 받았다 ㅠㅠ

아니 왜 그런걸까?? 했더니....

 

일단 앱에 심사를 넣을때 결제 심사도 같이 넣어줘야 한다.

 

바로 위의 부분에 편집에 들어가서 나의 결제를 넣으면 되는데 이 부분을 안 넣었더니 나는 문제 였고 일단 제일 큰 문제는

 

나는 빌드 번호 20번까지진행 되어서 약 17번? 정도에 인앱결제가 구현되었지만... 우리 기획자가 잘 몰라서 빌드 번호 2번으로 심사를 넣었다...

다시 심사를 넣어야 한다. ㅠㅠ

후... 디버깅이 안되는 세상이란 너무 힘들듯하다. 회사에 오니까 웹뷰는 앱에서 디버깅이 안된다고 해서 내가 찾았다..

생각보다 어렵지 않았다.

일단 flutter 앱에 코드 추가가 필요하다.

main 바로 아래에 

await webview.AndroidInAppWebViewController.setWebContentsDebuggingEnabled(true);

위의 코드를 넣어 주면된다.

물론 main을 async로 바꿔줘야 한다.

나는 플랫폼이 안드로이드 일때만 웹뷰 디버깅을 할테니까 

Platform.isAndroid

위의 조건을 걸었다.

 

그후에는 정말 쉽다. 일단 웹뷰 앱을 실행하고 

chrome://inspect 위의 링크로 가서 inspect라는 버튼을 누르면 된다.

ios를 독학 하다 보니 처음부터 의문점이 생긴다.

처음으로 ViewController를 보고 있었는데 

@IBOutlet??뭐지 싶었다.

찾아 보니까 IB는 Interface Builder였다. 별거 없구만

Flutter로 개발중 웹뷰를 디버깅 해야 하는 순간이 있을것이다. 

안드로이드로 웹뷰 디버깅을 하다가 IOS도 하는 방법을 찾았는데 안드로이드 보다 쉽다....

일단 실기기로 테스트를 진행하기 때문에 켜줘야 하는 옵션이 있다.

설정 > Safari > 고급으로 들어가서 [웹 속성]을 켜준다.(실 기기가 아니고 Simulator로 진행하는것이 아니라면 굳이 필요 없다.)

그 후에는 이제 맥으로 돌아가서 Safari Technology Preview를 설치한다.(나는 앱스토어가 아닌 브라우저로 들어가서 설치함)

(https://developer.apple.com/safari/technology-preview/)

 

설치가 끝났으면 앱을 켜서 디버깅 하고 싶은 웹뷰를 동작시킨다.

그 후 Safari Technology Preview의 개발자 탭에 내 폰 또는 시뮬레이터 이름을 클릭하면 해당 웹뷰의 url이 있는데 이것을 클릭하면 끝이다.

클릭하면 아래와 같이 실행되면서 끝!!

맥북 Finder에서 확장자명을 보이게 하는 방법은 쉬운데,

개발 도중에 Xcode에서 파일 확장자를 보이게 하고 싶었는데 쉬이 찾을수가 없었다.

하지만 막상 찾아서 해보려 하니 아주 간단했다.

Settings(Preferences) - File Extension - Show All 로 설정한다.

기본 프로젝트를 만들었더니 확장자가 없었다. 매우 불편하지 않을수가 없었다.

Xcode를 열고 왼쪽 상단 Xcode에서 Settings를 눌러준다.

General 탭에서 File Extensions 를 Show All로 바꿔주면 끝!!!

위와 같은 에러가 났다.

Could not build the precompiled application for the device. 같은 경우 여러 이유가 있겠지만 

위와 같은 경우는 경로를 못 찾아서 난 에러이다.

flutter 에러는 아니고 iphone 으로 테스트 중에 xcode에서 난 에러 같다.

 

경로에 파일이 없는거니까 파일을 추가해 주면 된다.

return new Scaffold(
  body: new Image.network(
    "https://cdn.pixabay.com/photo/2017/02/21/21/13/unicorn-2087450_1280.png",
    fit: BoxFit.cover,
    height: double.infinity,
    width: double.infinity,
    alignment: Alignment.center,
  ),
);

위와 같이 fit을 BoxFit.cover로 커버한뒤 double.infinity 를 사용하면 된다.

내가 이제는 스프링 부트 에러도 처리를 한다......

[현상1]

@SpringbootApplication 어노테이션이 붙어있는

  ~~Application.java 파일에서 오른쪽마우스  > Run

Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 이라는 에러가 뜬다. 

[현상2]

Run 버튼이 아예 안보이거나 상단의 실행버튼도 활성화가 되어있지 않다.

 

 

[해결방법]

Edit configurations > modify options > Environmnet variables 선택 > 칸이 생길것 spring.profiles.active=local 작성

- 만약 아예 configurations 가 없다면

Edit configurations > Application > ~~~Application.java 클래스 선택

+ Recent posts