分享
  1. 首页
  2. 文章

Go+Python双语言混合开发

mb5fdf56b9cf058 · · 1067 次点击 · · 开始浏览
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

Go+Python双语言混合开发


V:ititit111222333

 * 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. */ package io.appium.java_client.android.appmanagement; import static com.google.common.base.Preconditions.checkArgument; import static com.google.common.base.Preconditions.checkNotNull; import static java.util.Optional.ofNullable; import com.google.common.collect.ImmutableMap; import io.appium.java_client.appmanagement.BaseInstallApplicationOptions; import java.time.Duration; import java.util.Map; public class AndroidInstallApplicationOptions extends     BaseInstallApplicationOptions<AndroidInstallApplicationOptions> {   private Boolean replace;   private Duration timeout;   private Boolean allowTestPackages;   private Boolean useSdcard;   private Boolean grantPermissions;   /**   * Enables the possibility to upgrade/reinstall the application   * if it is already present on the device (the default behavior).   *   * @return self instance for chaining.   */   public AndroidInstallApplicationOptions withReplaceEnabled() {     this.replace = true;     return this;   }   /**   * Disables the possibility to upgrade/reinstall the application   * if it is already present on the device.   *   * @return self instance for chaining.   */   public AndroidInstallApplicationOptions withReplaceDisabled() {     this.replace = false;     return this;   }   /**   * The time to wait until the app is installed (60000ms by default).   *   * @param timeout the actual timeout value. The minimum time resolution   *        unit is one millisecond.   * @return self instance for chaining.   */   public AndroidInstallApplicationOptions withTimeout(Duration timeout) {     checkArgument(!checkNotNull(timeout).isNegative(), "The timeout value cannot be negative");     this.timeout = timeout;     return this;   }   /**   * Allows to install packages marked as test in the manifest.   *   * @return self instance for chaining.   */   public AndroidInstallApplicationOptions withAllowTestPackagesEnabled() {     this.allowTestPackages = true;     return this;   }   /**   * Disables a possibility to install packages marked as test in   * the manifest (the default setting).   *   * @return self instance for chaining.   */   public AndroidInstallApplicationOptions withAllowTestPackagesDisabled() {     this.allowTestPackages = false;     return this;   }   /**   * Forces the application to be installed of SD card   * instead of the internal memory.   *   * @return self instance for chaining.   */   public AndroidInstallApplicationOptions withUseSdcardEnabled() {     this.useSdcard = true;     return this;   }   /**   * Forces the application to be installed to the internal memory   * (the default behavior).   *   * @return self instance for chaining.   */   public AndroidInstallApplicationOptions withUseSdcardDisabled() {     this.useSdcard = false;     return this;   }   /**   * Grants all the permissions requested in the   * application's manifest automatically after the installation   * is completed under Android 6+.   *   * @return self instance for chaining.   */   public AndroidInstallApplicationOptions withGrantPermissionsEnabled() {     this.grantPermissions = true;     return this;   }   /**   * Does not grant all the permissions requested in the   * application's manifest automatically after the installation   * is completed (the default behavior).   *   * @return self instance for chaining.   */   public AndroidInstallApplicationOptions withGrantPermissionsDisabled() {     this.grantPermissions = false;     return this;   }   @Override   public Map<String, Object> build() {     final ImmutableMap.Builder<String, Object> builder = ImmutableMap.builder();     ofNullable(replace).map(x -> builder.put("replace", x));     ofNullable(timeout).map(x -> builder.put("timeout", x.toMillis()));     ofNullable(allowTestPackages).map(x -> builder.put("allowTestPackages", x));     ofNullable(useSdcard).map(x -> builder.put("useSdcard", x));     ofNullable(grantPermissions).map(x -> builder.put("grantPermissions", x));     return builder.build();   } }



有疑问加站长微信联系(非本文作者)

本文来自:51CTO博客

感谢作者:mb5fdf56b9cf058

查看原文:Go+Python双语言混合开发

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

关注微信
1067 次点击
暂无回复
添加一条新回复 (您需要 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传

用户登录

没有账号?注册
(追記) (追記ここまで)

今日阅读排行

    加载中
(追記) (追記ここまで)

一周阅读排行

    加载中

关注我

  • 扫码关注领全套学习资料 关注微信公众号
  • 加入 QQ 群:
    • 192706294(已满)
    • 731990104(已满)
    • 798786647(已满)
    • 729884609(已满)
    • 977810755(已满)
    • 815126783(已满)
    • 812540095(已满)
    • 1006366459(已满)
    • 692541889

  • 关注微信公众号
  • 加入微信群:liuxiaoyan-s,备注入群
  • 也欢迎加入知识星球 Go粉丝们(免费)

给该专栏投稿 写篇新文章

每篇文章有总共有 5 次投稿机会

收入到我管理的专栏 新建专栏