小编Phi*_*e A的帖子

Android Gradle插件中的testOptions.animationsDisabled属性有什么作用?

我最近在Android Gradle插件中发现了属性testOptions.animationsDisabled.

我希望这将有助于与咖啡执行UI测试时禁用我的设备上的动画,但它不是,即我还是要手动禁用动画或使用一个几个 选项可用.否则一些UI测试变得不稳定.

由于这个属性的描述相当短,有没有人知道它的用途是什么意思?

我的gradle文件如下:

apply plugin: 'com.android.application'
android {
    testOptions {
        animationsDisabled = true
    }
}
Run Code Online (Sandbox Code Playgroud)

谢谢.

android android-testing android-gradle-plugin android-espresso

14
推荐指数
2
解决办法
1817
查看次数

xctool无法清理我的iOS项目

我正在使用xctool(v0.1.16)iOS项目,其配置如下:

  • 工作区
  • 两个目标ProjectProjectTests
  • 两个计划ProjectProjectTests

我有一个配置.xctool-args了工作空间和Project方案的文件.

我运行xctool buildxctool -scheme ProjectTests -sdk iphonesimulator test成功.

但是,我运行xctool clean并发生以下情况:

  • 1它xcodebuild clean Project成功运行
  • 第二次它运行xcodebuild build clean失败并出现错误:
    • 当前未针对清除操作配置Scheme测试.

这很奇怪,因为我根本没有Tests计划.

我运行xctool clean -showTasks并获得有关错误的更多详细信息.它运行并失败

/Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild \
  -configuration Debug \
  -workspace    /var/folders/b7/472b_skj24gf7wmw6c3krp5c0000gn/T/xctool_temp_KMbH0e/Tests.xcworkspace \
  -scheme    Tests \
OBJROOT=/Users/paristote/Library/Developer/Xcode/DerivedData/Project-fmyqwebczmtplydrfhcmrdzezcft/Build/Intermediates \
SYMROOT=/Users/paristote/Library/Developer/Xcode/DerivedData/Project-fmyqwebczmtplydrfhcmrdzezcft/Build/Products \
SHARED_PRECOMPS_DIR=/Users/paristote/Library/Developer/Xcode/DerivedData/Project-fmyqwebczmtplydrfhcmrdzezcft/Build/Intermediates/PrecompiledHeaders \
  -IDECustomDerivedDataLocation=/var/folders/b7/472b_skj24gf7wmw6c3krp5c0000gn/T/xctool_temp_KMbH0e/DerivedData \
  clean
Run Code Online (Sandbox Code Playgroud)

但是,单独执行的相同命令会成功完成.

工作区/var/folders/b7/472b_skj24gf7wmw6c3krp5c0000gn/T/xctool_temp_KMbH0e/Tests.xcworkspace只需引用两个项目Projectxcodeproj和Podsxcodeproj.它确实包含带有构建操作的测试方案.

为什么这个命令在第一位失败?任何帮助表示赞赏. …

xcodebuild ios xctool

6
推荐指数
1
解决办法
6698
查看次数

如何加快SpringBoot 2.0基本身份验证?

我最近将Spring Boot应用程序从v1.5更新到了v2.0.3。这是一个应用程序,其方法公开为REST端点,并通过基本HTTP身份验证进行保护。用户名和密码硬编码在应用程序加载的属性文件中。

自更新以来,响应时间增加了近200毫秒,而处理请求的时间的98%花费在BasicAuthenticationFilter.doFilter()中。

新的文物交易明细

更具体地说,花费时间对请求中的密码进行编码,以将其与配置提供的密码进行比较。

visualvm详细信息

这是SecurityConfig类的摘录:

@EnableWebSecurity
@PropertySource("classpath:auth/auth.properties")
public class SecurityConfig extends WebSecurityConfigurerAdapter {

     @Value("${user.name}")
     private String userName;
     @Value("${user.password}")
     private String userPassword;
     @Value("${user.roles}")
     private String[] userRoles;

     @Override
     protected void configure(final AuthenticationManagerBuilder auth) throws Exception {
        PasswordEncoder encoder = PasswordEncoderFactories.createDelegatingPasswordEncoder();
        UserDetails user = User.withUsername(userName).password(encoder.encode(userPassword)).roles(userRoles).build();
        auth.inMemoryAuthentication().withUser(user);
    }

    @Override
    protected void configure(final HttpSecurity http) throws Exception {
        //make sure that the basic authentication header is always required
        http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS);

        //set the correct authentication entry point to make sure the 401 response is in JSON format …
Run Code Online (Sandbox Code Playgroud)

spring-security spring-boot

5
推荐指数
2
解决办法
639
查看次数

尽管在android清单中声明了所需的权限,但无法从设备获取电话号码

我正在尝试以编程方式从我的设备获取电话号码.我正在尝试使用以下代码:

TelephonyManager tMgr = (TelephonyManager) getApplicationContext().getSystemService(Context.TELEPHONY_SERVICE);
mPhoneNumber = tMgr.getLine1Number();
Run Code Online (Sandbox Code Playgroud)

我在清单文件中声明了以下权限:

 <uses-permission android:name="android.permission.INTERNET" />
 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
 <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
 <uses-permission android:name="android.permission.READ_SMS"/>
Run Code Online (Sandbox Code Playgroud)

但是我的应用程序仍然崩溃,堆栈跟踪如下:

E/AndroidRuntime: FATAL EXCEPTION: main
Process: toadways.ways.toad.toadways, PID: 29620
java.lang.RuntimeException: Unable to start activity ComponentInfo{toadways.ways.toad.toadways/toadways.ways.toad.toadways.RegistrationScreen}: java.lang.SecurityException: getLine1NumberForDisplay: Neither user 10240 nor current process has android.permission.READ_SMS.
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: java.lang.SecurityException: getLine1NumberForDisplay: Neither user 10240 nor current process has android.permission.READ_SMS.
at android.os.Parcel.readException(Parcel.java:1599) …
Run Code Online (Sandbox Code Playgroud)

android telephonymanager android-securityexception android-security

0
推荐指数
1
解决办法
7230
查看次数