例如,用户可能仅基于总体用户群的百分比(10%).部署应该是可自定义的(可配置的)并支持任意数量的功能.将转出关联到特定用户角色或特权(ACL)也很有用.
那么,从本质上讲,什么是可以合理扩展的架构?
至于语言不可知部分,您可以提供伪代码,一般概念或想法,或者使用您首选语言的片段来表达您的观点.
欢迎链接到任何示例或教程.
我需要准备一个针对即时应用程序的Alpha测试,它在Android Studio上运行就像一个魅力,但当我尝试在PlayStore中推出它时失败了,说:
您必须为即时应用APK提供默认网址
应用程序结构使用三个模块完成:
- base:它包含所有代码
- apk:Wrapper获取可安装的apk
- instantApp:Wrapper获取instantApp apk
这是build.gradles:
的build.gradle
buildscript {
repositories {
jcenter()
mavenCentral()
maven { url 'https://maven.google.com'}
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0-alpha3'
}
}
allprojects {
repositories {
jcenter()
maven { url 'https://maven.google.com' }
mavenCentral()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
ext {
buildTools = '25.0.2'
compileSdk = 25
minSdk = 23
versionCode = 10
versionName = '4.0'
supportLib = '25.3.1'
playServices = "10.2.6"
}
Run Code Online (Sandbox Code Playgroud)
碱/的build.gradle
buildscript { …Run Code Online (Sandbox Code Playgroud) 使用Google Play Staged Rollout选项,我可以向一小部分用户发布我的Android应用的新版本.根据它的成功程度,我会增加给定时期内的百分比.我假设(因为我无法找到它记录)如果我将应用程序推出到10%,那么该应用程序的新用户和现有用户都有这个百分比的差异.(编辑,见下面的评论)
如果这是真的,那么访问Google Play商店的人会看到应用的屏幕截图,并可能使用这些可视图片来决定是否安装该应用.如果我的新版本具有明显不同的外观,那么在选择下载之前,新用户将看不到新应用的真实表示.
我怀疑我已经知道答案是否定的,但是有没有人确定是否可以上传新截图,这些截图只会出现给那些将收到新版本的人?我想这实际上取决于分阶段的推出代码/逻辑如何工作,是否依赖于设备上的Google Play应用,或者直到用户实际点击下载.任何人都有他们可以分享的经验吗?
有没有办法取消 Google Play Developer Console 上的待定发布?我不小心发送了错误的 apk 文件并且找不到取消它的方法。
由于实施原因,我正在尝试重新启动命名空间的所有部署。
我正在使用“kubectl rollout -n restart deploy”,它工作得很好,但我不确定该命令会导致停机,或者它是否作为“rollout update”工作,一一应用重新启动,保持我的服务正常运行。
有人知道吗?
在文档中我只能找到这个:
| 手术 | 句法 | 描述 |
|---|---|---|
| 推出 | kubectl rollout 子命令 [选项] | 管理资源的推出。有效的资源类型包括:部署、守护进程集和状态集。 |
但我找不到有关特定“推出重新启动部署”的详细信息。
我需要确保它不会导致停机。现在很难说,因为重启过程非常快。
更新:我知道对于一个特定的部署(kubectl rollout restart deployment/name),它按预期工作并且不会导致停机,但我需要将其应用到所有命名空间(不指定部署),这就是我的情况我不确定。
我已经上传了我发布到应用商店的新版Android应用.目前,我正在使用Google Play商店中的"更新推出"功能慢慢推出它.该应用程序已经过严格测试,但希望在完全部署之前测试用户从先前版本迁移的内容.
目前,"以推出为目标的安装"百分比设置为50%,我远低于"在活动设备上安装".
这是否意味着:
无论安装如何,50%的用户都可以看到更新
要么
我的所有用户都可以看到我的更新版本,直到第一次安装50%
我问,因为我有一个特定的用户遇到了以前版本及其手机的问题,这可能会得到这个最新版本的帮助.但是 - 首次展示无法"定位"特定用户.
以下是Google关于分阶段推出的官方文档.这些是用户的主要观点,但如果"目标价值"是该版本用户的目标百分比,或者可以下载升级的用户百分比,我就不太了解.
我已经在Google Play控制台中发布了我的版本,但是几天后,发布百分比仅为50%。从一开始,我就将推广百分比设置为100%。我通常可以知道Google推出100%的时间有多长时间,如何加快发布速度吗?谢谢。
我的命名空间中有许多部署对象。我想同时kubectl rollout status为他们所有。因此,我希望命令退出,仅当所有部署完成或发生错误时。我怎样才能做到这一点?
到目前为止,我唯一得到的是:
kubectl get deploy -o name | xargs -n1 -t kubectl rollout status
Run Code Online (Sandbox Code Playgroud)
但我希望有更聪明的东西。
我们明天将使用IIS为客户推出一个站点.
我将该网站带到公众面前(对不起,我们正在更新消息)并允许客户端在我们执行升级后的周末进行测试.
如果它成功了,我打开它给大家 - 如果没有,我回滚.
为公众提供"我们不开放"标志的最简单方法是什么,但其余部分对测试人员开放?
我正在尝试安装rollout.io,它只是说它把代码放在你的ApppDelegate中,问题是它在Objective-C中.所以我使用转换器尝试将其更改为Swift,但是当我尝试将Objective-C导入头放入我的代码时它不起作用.即使我尝试转换它,在线转换器甚至不会显示"导入"部分
我已经准备好了这些
码:
import Rollout
import rollout
import UIRollout
Run Code Online (Sandbox Code Playgroud)
所有这些都失败了.
我可以在swift弹出中获得底部但不是顶部的"import,Rollout/Rollout.h>"部分
每当我将我的基本 APK 和功能 APK 上传到 Play 商店时,我都会遇到以下错误:
这是我的清单文件:(已编辑)
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ex.example.feature.productdetail">
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<application>
<activity
android:name=".activity.ProductDetail"
android:configChanges="orientation|screenSize"
android:screenOrientation="portrait">
<meta-data
android:name="default-url"
android:value="https://www.example.com/product/12345" />
<meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
<intent-filter
android:autoVerify="true"
android:order="1"
>
<category android:name="android.intent.category.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="http" android:host="www.example.com"/>
<data android:scheme="https" android:host="www.example.com"/>
<data android:pathPattern="/product/12345"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<meta-data
android:name="com.facebook.sdk.ApplicationId"
android:value="@string/facebook_app_id"/>
</application>
</manifest>
Run Code Online (Sandbox Code Playgroud)
我将 assetlinks.json 文件放到我的网站上,当我继续测试链接文件时,它成功了。我做错了什么任何想法?感谢您在高级方面的帮助
android rollout google-play-services digital-assets-links android-instant-apps
rollout ×12
android ×7
google-play ×5
kubernetes ×2
release ×2
apk ×1
asp.net ×1
c# ×1
deployment ×1
iis ×1
ios ×1
kubectl ×1
limited-user ×1
objective-c ×1
publish ×1
swift ×1
web ×1
xcode ×1