我有一个使用动态功能模块的项目,我想通过 gradle 任务(用于我的 CI 目的)在功能模块中运行我的单元测试:
./gradlew :feature_product:test
Run Code Online (Sandbox Code Playgroud)
但它总是为我NoClassDefFoundError提供依赖于基本模块类的测试:
com.example.android.feature.product.ProductViewTest > on vote change to negative FAILED
java.lang.NoClassDefFoundError: app.BaseView
Run Code Online (Sandbox Code Playgroud)
ProductView功能模块中的类从BaseView基础模块扩展而来。
奇怪的是,它在 Android Studio 中运行时成功了,它运行良好。
然后,当我通过命令行运行和运行 Android Studio 时,我注意到日志中有一些不同的东西。Android Studio 中的第一行是generateDebugSources我运行时不存在的内容./gradlew test
Executing tasks: [:lib_ui:generateDebugSources, ...]
Run Code Online (Sandbox Code Playgroud)
我该如何解决?./gradlew test当我按 Ctrl+Shift+R 时,Android Studio 是否有与提供的命令不同的命令?
这是我第一次尝试反应.我创建了一个项目create-react-app,然后用于路由,我使用React Router V4 for web react-router-dom.
这是我的index.js档案
import React from 'react';
import ReactDOM from 'react-dom';
import { BrowserRouter as Router } from 'react-router-dom';
import App from './App';
import './index.css';
ReactDOM.render(
<Router>
<App />
</Router>,
document.getElementById('root')
);
Run Code Online (Sandbox Code Playgroud)
使用启动服务器时没有问题npm start.但是当我构建应用程序时npm run build,将它放在我的wwwApache服务器的文件夹中并访问它,我只能<!-- react-empty: 1 -->在我的内部获得空白页面root div.
<div id="root">
<!-- react-empty: 1 -->
</div>
Run Code Online (Sandbox Code Playgroud)
我试过寻找类似的情况,但答案总是关于添加historyApiFallbackwebpack.config.js或gulp,我在create-react-app模板的任何地方都找不到.
我试过了HashRouter,它运行正常,但是/#/在网址中有不合需要的.
在构建应用程序后,如何让BrowserRouter工作?
我有一个FireIn的SignInActivity AuthStateListener。
final FirebaseAuth firebaseAuth = FirebaseAuth.getInstance();
final FirebaseAuth.AuthStateListener firebaseAuthListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(FirebaseAuth auth) {
FirebaseUser user = auth.getCurrentUser();
if (user != null && user.isEmailVerified()) {
firebaseAuth.removeAuthStateListener(this);
startActivity(new Intent(LoginActivity.this, MainActivity.class));
}
}
};
firebaseAuth.addAuthStateListener(firebaseAuthListener);
Run Code Online (Sandbox Code Playgroud)
成功注册新帐户后,我setVisibity(View.Visible)将在活动中带有EditTextEmail&的验证页VerifyButton(以防有人想重新发送电子邮件验证)。
我想做的是,当我从电子邮件帐户验证电子邮件时,我希望页面自动启动,MainActivity而不是LoginActivity像我的短信那样闲置,当短信中收到验证码时,应用程序会读取短信并导航到MainActivity。是否可以通过电子邮件验证来实现?因为FirebaseAuthState即使我单击电子邮件上的验证链接,也从未改变。
我需要类似的东西 OnFirebaseAuthUserEmailVerifiedListener
我是Firebase的新手,如果无法实现此目标,请给我建议。
我正在处理一个相当古老的项目,其中包含大量 Java 代码,要替换它,这太麻烦了,而且由于 kotlin 比 Java 好得多,我正在尝试将所有新代码混合在一起kotlin 中的代码,但是当我尝试使用此 kotlin 代码访问 java 代码时
val params = mutableMapOf<String, String>(
"name" to response.name,
"type" to response.type
)
product.params = params
Run Code Online (Sandbox Code Playgroud)
我在下面有一个红色下划线params,它说
Required: Hashmap<String!, Any!>!
Found: MutableMap<String, String>
Run Code Online (Sandbox Code Playgroud)
这是我的 java setter
public void setParams(HashMap<String, Object> params){
this.params = params;
}
Run Code Online (Sandbox Code Playgroud)
我可以在不更改 java 代码的情况下解决这个问题吗?如果可能,请提供帮助,如果可能,请提供帮助,以及解决此问题的解决方法是什么。
android ×2
java ×2
firebase ×1
gradle ×1
hashmap ×1
javascript ×1
junit ×1
kotlin ×1
react-router ×1
reactjs ×1
unit-testing ×1