Cloudflare Pages 가 /index.html 을 / 로 308 리다이렉트하는데, 서비스워커가 그 리다이렉트 응답을 캐시해 두면 navigation 요청에 응답할 수 없어(스펙상 금지) 두 번째 실행부터 ERR_FAILED 로 앱이 아예 열리지 않았다. - sw.js: navigation 은 네트워크 우선 + 캐시된 './' 오프라인 폴백, 프리캐시는 리다이렉트 플래그 없는 새 Response 로 복사해 저장 (tetrig-v2) - manifest.webmanifest: start_url 을 './' 로 바꿔 리다이렉트 자체를 회피 - android/: Bubblewrap TWA 프로젝트 (kr.tkrmagid.tetrig, launchUrl '/') - .well-known/assetlinks.json: 서명 키 SHA-256 등록 → 주소창 없는 전체화면 실행
43 lines
1.1 KiB
Groovy
43 lines
1.1 KiB
Groovy
/*
|
|
* Copyright 2019 Google Inc.
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
|
|
|
buildscript {
|
|
|
|
repositories {
|
|
google()
|
|
mavenCentral()
|
|
}
|
|
dependencies {
|
|
classpath 'com.android.tools.build:gradle:8.9.1'
|
|
|
|
// NOTE: Do not place your application dependencies here; they belong
|
|
// in the individual module build.gradle files
|
|
}
|
|
}
|
|
|
|
allprojects {
|
|
repositories {
|
|
google()
|
|
mavenCentral()
|
|
}
|
|
}
|
|
|
|
task clean(type: Delete) {
|
|
delete rootProject.buildDir
|
|
}
|