반응형

bundletool 설치 :

brew install bundletool

 

apks파일로 변환 :

bundletool build-apks --bundle=test.aab --output=test.apks --mode=universal

 

bundletool을 직접 다운받은 경우 아래와 같이 변환 :

java -jar "bundletool-all-1.1.0.jar" build-apks --bundle="test.aab" --output="test.apks" --mode=universal

 

apks 확장자를 zip으로 변경 후 압축을 풀면 apk파일을 얻을 수 있다. 

 

참고 :

developer.android.com/studio/command-line/bundletool

 

반응형
블로그 이미지

SKY STORY

,
반응형

WKWebView 웹사이트 출력 완료 시점에 자동화 처리를 해야하는 경우가 종종있다.

이럴경우 다음과 같이 현재 페이지 로딩이 완료됬을 때 이벤트를 받아 처리할 수 있다.

func waitFullyLoaded(_ completionHandler: @escaping () -> Void) {
	webView.evaluateJavaScript("document.readyState === 'complete'") { (result, error) in
     	if let fullyLoaded = result as? Bool {
  			if !fullyLoaded || self.webView.isLoading {//not fully loaded yet
                DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
                	self.waitFullyLoaded(completionHandler)
                }
            } else {// fully loaded
            	completionHandler()
        	}
    	}
	}
}
 
func test() {
	waitFullyLoaded { [weak self] in
	    guard let unwrappedSelf = self else { return }
    	unwrappedSelf.webView.evaluateJavaScript("javascript:main.payment();");
	}
}

 

반응형

'개발 > iOS' 카테고리의 다른 글

CocoaPods 설치 및 제거  (0) 2020.12.10
Clang diagnostic 경고 무시하기  (0) 2020.12.10
개발관련 폴더 경로  (0) 2020.08.06
웹에서 iOS 앱 설치여부 체크  (0) 2020.07.17
Dictionary sort  (0) 2020.07.11
블로그 이미지

SKY STORY

,
반응형

Derived Data

/Users/[ 사용자 계정 ]/Library/Developer/Xcode/DerivedData

 

Archives

/Users/[ 사용자 계정 ]/Library/Developer/Xcode/Archives

 

Simulator Components

/Library/Developer/CoreSimulator/Profiles/Runtimes

 

Provisioning Profiles:

/Users/[ 사용자 계정 ]/Library/MobileDevice/Provisioning\ Profiles

반응형

'개발 > iOS' 카테고리의 다른 글

Clang diagnostic 경고 무시하기  (0) 2020.12.10
WKWebView 화면 출력 완료 이벤트  (0) 2020.08.11
웹에서 iOS 앱 설치여부 체크  (0) 2020.07.17
Dictionary sort  (0) 2020.07.11
UTC시간, Locale시간 변경  (0) 2020.07.11
블로그 이미지

SKY STORY

,
반응형

맥북에 안드로이드 디바이스 usb 연결한다.

디바이스와 맥북은 같은 네트워크상에 연결되어 있어야 한다.

 

콘솔창을 열고 연결된 디바이스를 확인한다.

 

에뮬레이터는 종료하도록 하자

 

사용할 포트를 연다

 

폰에 연결된 와이파이 로컬 IP주소를 확인하고 연결한다.

 

연결 완료 후 usb케이블을 제거하고 연결된 디바이스를 확인한다. 

연결이 완료된 상태라면 이제 원격디버깅이 가능하다.

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형
블로그 이미지

SKY STORY

,
반응형

스마트폰 BTC 채굴앱

https://get.cryptobrowser.site/34473645

 

Earn coins while browsing the web

Earn bitcoins while watching videos, chatting, or playing online. It has never been so easy to increase your income! Tell your friends about CryptoTab Browser, invite them to join, and earn more together. Grow your network—get more profit!

get.cryptobrowser.site

 

다음과 같은 에러 발생시 

Cannot convert string value 'JETPACK_COMPOSE' to an enum value of type 'com.android.builder.model.AndroidGradlePluginProjectFlags$BooleanFlag' (valid case insensitive values: APPLICATION_R_CLASS_CONSTANT_IDS, TEST_R_CLASS_CONSTANT_IDS, TRANSITIVE_R_CLASS)

 

build.gradle 파일내 4.0.0이상으로 되어있는 버전을 다음과 같이 3.6.1버전으로 낮추면 에러를 해결할 수 있다.

classpath 'com.android.tools.build:gradle:3.6.1'

 

 

스마트폰 BTC 채굴앱

https://get.cryptobrowser.site/34473645

 

Earn coins while browsing the web

Earn bitcoins while watching videos, chatting, or playing online. It has never been so easy to increase your income! Tell your friends about CryptoTab Browser, invite them to join, and earn more together. Grow your network—get more profit!

get.cryptobrowser.site

 

반응형
블로그 이미지

SKY STORY

,
반응형

jdk 설치후 나타나는 경고 메시지 이다.

 

다음과 같은 에러 발생시 IntelliJ 설정에서 다음과 같이 체크박스를 언체크해주도록 한다.

반응형
블로그 이미지

SKY STORY

,
반응형

앱링크를 타임아웃을 설정하고 앱을 실행되도록 하면 
앱이 설치되어 있을 경우 앱을 실행하게된다. 

setTimeout(function () { 
	window.location = "https://itunes.apple.com/app/앱 아이디"; 
}, 25);
window.location = "앱 스킴명://";

 

iOS 14.4.1 이후 위의 타임 트릭을 사용하여 앱 호출 시

앱 실행과 스토어 이동이 중복해서 발생하는 문제가 발생된다.

이 경우 Universal Link를 사용하도록 하자.

 

2021.03.16 - [iOS/Tips] - Universal Link (1/4) - 네이티브 환경설정

2021.03.16 - [iOS/Tips] - Universal Link (2/4) - 네이티브 링크 수신

2021.03.16 - [iOS/Tips] - Universal Link (3/4) - 웹서버 환경 설정

2021.03.16 - [iOS/Tips] - Universal Link (4/4) - 웹서버 환경 검증

2020/12/08 - [프로그래밍/Java Script] - Android, iOS 앱 설치여부 체크 및 스토어 이동

2020/12/14 - [iOS/Tips] - bundle id 알아내기

2020/12/12 - [AI/Algorithm] - 2D 충돌처리

2020/12/11 - [iOS/Swift] - UIViewController 스위칭

2020/12/11 - [개발노트] - PlantUML 설치 (Mac OS X)

2020/12/11 - [개발노트] - 특수문자 발음

2020/12/10 - [iOS/Objective-C] - 웹뷰에서 javascript 함수 동기식 호출

2020/12/10 - [iOS/Tips] - Fat Static Library 빌드 (2/2)

2020/12/10 - [iOS/Tips] - Fat Static Library 빌드 (1/2)

2020/12/10 - [iOS/Tips] - Custom UserAgent 설정

2020/12/10 - [iOS/Tips] - CocoaPods 설치 및 제거

2020/12/10 - [iOS/Tips] - Clang diagnostic 경고 무시하기

2020/12/10 - [개발노트] - Bluetooth UUID

 

반응형

'개발 > iOS' 카테고리의 다른 글

WKWebView 화면 출력 완료 이벤트  (0) 2020.08.11
개발관련 폴더 경로  (0) 2020.08.06
Dictionary sort  (0) 2020.07.11
UTC시간, Locale시간 변경  (0) 2020.07.11
SEED 블록암호 알고리즘 CBC (Cipher Block Chaining) 예제 (2/2)  (0) 2020.07.11
블로그 이미지

SKY STORY

,
반응형

웹에서 안드로이드 앱을 실행할 경우 다음과 같은 설정 후 사용 가능하다.

Android Manifest 설정

<activity
  android:name=".TestActivity">

  <!-- 이 부분이 다 들어가 있어야 동작 -->
  <intent-filter>
    <action android:name="android.intent.action.VIEW"/>
    <category android:name="android.intent.category.DEFAULT"/>
    <category android:name="android.intent.category.BROWSABLE"/>
    <data android:scheme="schemeName" android:host="hostName"/>
  </intent-filter>
</activity>

설명

  • android.intent.action.VIEW : 이 작업은 액티비티가 사용자에게 표시할 수 있는 어떤 정보를 가지고 있을 때 startActivity()가 있는 인텐트에서 사용합니다. 예를 들어 갤러리 앱에서 볼 사진이나 지도 앱에서 볼 주소 등이 이에 해당됩니다.
  • android.intent.category.DEFAULT : 암시적 인텐트를 수신하려면 인텐트 필터 안에 반드시 포함되어 있어야 합니다.
  • android.intent.category.BROWSABLE : 대상 액티비티가 스스로 웹 브라우저가 자신을 시작해도 되도록 허용하여 링크로 참조된 데이터를 표시하게 합니다. 예컨대 이미지나 이메일 메시지 등이 이에 해당합니다.
  • data : 이 부분에서 scheme이름과 host이름을 지정해주어야 실행시킬 수 있습니다.

포맷

<scheme>://<host>:<port>/<path>

Web에서 설정

<a href="schemeName://hostName"> 실행 하기 </a>

위와 같이 설정이 끝난 상태에서 Web에서 해당 링크를 누르게 되면 설치되어 있는 경우에 지정한 Activity가 실행이 됩니다.

 

2020/12/17 - [프로그래밍/Java] - Java HotSpot(TM) 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended

2020/12/17 - [OS/Mac OS X] - OpenSSL을 이용한 Key 정보 Text 변환

2020/12/17 - [프로그래밍/Java] - RSA 암복호화

2020/12/17 - [iOS/Tips] - URL query 파싱 및 json string 변환

2020/12/16 - [개발노트] - Code 128 Barcode의 Check Digit 계산방법

2020/12/15 - [iOS/Tips] - 디버깅 차단 처리 (Anti Debug)

2020/12/14 - [iOS/Tips] - bundle id 알아내기

2020/12/12 - [AI/Algorithm] - 2D 충돌처리

2020/12/11 - [iOS/Swift] - UIViewController 스위칭

2020/12/11 - [개발노트] - PlantUML 설치 (Mac OS X)

2020/12/11 - [개발노트] - 특수문자 발음

2020/12/10 - [iOS/Objective-C] - 웹뷰에서 javascript 함수 동기식 호출

2020/12/10 - [iOS/Tips] - Fat Static Library 빌드 (2/2)

2020/12/10 - [iOS/Tips] - Fat Static Library 빌드 (1/2)

2020/12/10 - [iOS/Tips] - Custom UserAgent 설정

반응형
블로그 이미지

SKY STORY

,