你怎么能在按下切换按钮时运行一些动作,如:
{
xtype: 'togglefield',
name: 'enableSnd',
label: 'Sound',
value : 1
}
Run Code Online (Sandbox Code Playgroud)
?
日Thnx!
我想从路径字符串中替换空格.我试过下面但似乎没有工作:
String path = "/Users/TD/San Diego";
path=path.replaceAll(" ","\\ ");
System.out.println(path);
Run Code Online (Sandbox Code Playgroud)
目标是转换
"/ Users/TD/San Diego"改为"/ Users/TD/San\Diego"
字符串中的任何其他空间也需要替换为"\"
我用空间实现了缓存但由于某种原因它被破坏了,要么它没有插入或者没有得到数据,我已经做了很多调试但是仍然没有任何线索......有人可以帮忙吗?那么,图片如下:
主要活动
mArticleViewModel = ViewModelProviders.of(this).get(ArticleViewModel.class);
mArticleViewModel.getArticleList(mPageNumber).observe(this, articles
-> { /* doesn't matter */ });
Run Code Online (Sandbox Code Playgroud)视图模型
public class ArticleViewModel extends AndroidViewModel {
public static final String TAG = "ArticleViewModel";
private LiveData<List<Article>> articleList;
private ArticleRepository articleRepository;
public ArticleViewModel(@NonNull Application application) {
super(application);
Log.d(TAG, "ArticleViewModel");
if (articleRepository == null) {
articleRepository = new ArticleRepository(application);
}
}
public LiveData<List<Article>> getArticleList(int pageNumber) {
Log.d(TAG, "getArticleList");
articleList = articleRepository.getArticles();
return articleList;
}
}
Run Code Online (Sandbox Code Playgroud)
}
知识库
public class ArticleRepository {
public static final String TAG = "ArticleRepository"; …Run Code Online (Sandbox Code Playgroud)嗨,我是Android开发的新手,我正在尝试在YouTube上找到的有关MVVM的教程。视频中的示例项目使用AppCompat,但我将自己的代码转换为androidx,因为从我读取的内容中可以使用current(?)版本?我是否对这种想法感到误解?
无论如何,本教程的一部分利用了RecyclerView,我无法在我的activity_main.xml文件中访问它,表明v7是一个未解决的程序包。android.support.v7.widget.RecyclerView从v7开始以红色文本显示。我知道我可以将其还原为旧版本,但我想我正在努力使这项工作取得成功,因为它有望了解如何正确使用androidx?
我不知道如何在当前项目迁移到androidx的情况下将RecyclerView添加到项目中。
我尝试过的
implementation 'com.android.support:recyclerview-v7:28.0.0'根据文档添加我的依存关系:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0-alpha04'
implementation 'androidx.appcompat:appcompat:1.0.0-beta01'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.1.0-alpha4'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha4'
//RecyclerView
implementation 'com.android.support:recyclerview-v7:28.0.0'
// Lifecycle components
implementation "androidx.lifecycle:lifecycle-extensions:2.1.0-alpha04"
annotationProcessor "androidx.lifecycle:lifecycle-compiler:2.1.0-alpha04"
// Room Components
implementation "androidx.room:room-runtime:2.1.0-alpha06"
annotationProcessor "androidx.room:room-compiler:2.1.0-alpha06"
}
Run Code Online (Sandbox Code Playgroud)
我的activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<view class="android.support.v7.widget.RecyclerView"
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:listitem="@layout/todo_item"/>
</androidx.constraintlayout.widget.ConstraintLayout>
Run Code Online (Sandbox Code Playgroud) 以下Gradle任务,它配置JacocoReportBase:
task jacocoRootReport(type: JacocoReport) {
...
sourceDirectories = files(subprojects.sourceSets.main.allSource.srcDirs)
additionalSourceDirs = files(subprojects.sourceSets.main.allSource.srcDirs)
classDirectories = files(subprojects.sourceSets.main.output)
executionData = files(subprojects.jacocoTestReport.executionData)
...
}
Run Code Online (Sandbox Code Playgroud)
使用以下命令生成时会生成这些警告./gradlew assembleDebug --warning-mode all:
The JacocoReportBase.setSourceDirectories(FileCollection) method has been deprecated.
This is scheduled to be removed in Gradle 6.0. Use getSourceDirectories().from(...)
at tasks_1p10s36ydq4k8rroeiucekewi$_run_closure6.doCall(.../tasks.gradle:152)
The JacocoReportBase.setAdditionalSourceDirs(FileCollection) method has been deprecated.
This is scheduled to be removed in Gradle 6.0. Use getAdditionalSourceDirs().from(...)
at tasks_1p10s36ydq4k8rroeiucekewi$_run_closure6.doCall(.../tasks.gradle:151)
The JacocoReportBase.setClassDirectories(FileCollection) method has been deprecated.
This is scheduled to be removed in Gradle …Run Code Online (Sandbox Code Playgroud) android gradle jacoco android-gradle-plugin deprecation-warning
我无法弄清楚如何将 RStudio/Shiny 连接到云存储库,以便它执行最新的推送。
我如何将该 IP 分配给我的 DNS,以便它可以成为我(Google 托管)网站的一部分?
谢谢!
rstudio-server shiny-server google-cloud-platform google-cloud-repository
当我从Android Studio运行Android Emulator时,出现以下警告:
模拟器:警告:QXcb集成:无法创建平台OpenGL上下文,GLX和EGL均未启用((null):0,(null))
此警告以前未出现。此警告的含义是什么,我是否应该忽略它?解决方法是什么?
我正试图从Facebook和Google API登录,谷歌API工作正常,问题出现在Facebook登录,一切都在Facebook开发者控制台设置,我的应用程序也是现场.
问题是每当用户点击登录按钮(这是一个自定义的ImageButton)时,ProgressBar会显示,然后它会消失,并且应用程序仍处于相同的活动状态,而无需用户登录.
该活动的完整代码是:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_opening);
progressDialog = new ProgressDialog(this);
mAuth = FirebaseAuth.getInstance();
Auth = FirebaseAuth.getInstance();
if (mAuth.getCurrentUser() != null) {
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
}
GoogleSignInOptions gso = new GoogleSignInOptions
.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestIdToken(getString(R.string.default_web_client_id))
.requestEmail()
.build();
mGoogleSignInClient = GoogleSignIn.getClient(this, gso);
Google = (ImageView) findViewById(R.id.googleSignin);
Google.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
SIGN_IN_REQUEST = 1;
signIn();
progressDialog.setMessage("Loading...");
progressDialog.setCancelable(false);
progressDialog.show();
}
});
callbackManager = CallbackManager.Factory.create();
Facebook = (ImageView) findViewById(R.id.facebookSignin);
Facebook.setOnClickListener(new View.OnClickListener() …Run Code Online (Sandbox Code Playgroud) android facebook-authentication firebase firebase-authentication
在分析 APK 时,我在存档的根目录中发现了大量.properties文件,指示 Google Play 服务、Firebase 和 Google HTTP 客户端的版本号,例如:
version=19.2.0
client=firebase-database
firebase-database_client=19.2.0
Run Code Online (Sandbox Code Playgroud)
理论上,这些可以从包中排除:
android {
packagingOptions {
exclude "firebase-*.properties"
exclude "play-services-*.properties"
exclude "google-http-client.version"
}
}
Run Code Online (Sandbox Code Playgroud)
然而,这个问题表明这将是“预期行为”。那么,从包中排除这些看似无用的文件是否安全?或者 Google Play 是否需要这些文件,以便将这些版本号暴露给自动包内容扫描?这些版本号文件的用途是否记录在某处?
这是我正在谈论的内容的屏幕截图:
模拟位置在 Android 10 上不起作用,调用 addTestProvider 时崩溃:
2020-11-30 00:25:16.855 13189-13256/br.com.tupinikimtecnologia.fakegpslocation E/AndroidRuntime: FATAL EXCEPTION: DefaultDispatcher-worker-2
Process: br.com.tupinikimtecnologia.fakegpslocation, PID: 13189
java.lang.IllegalArgumentException: Provider "gps" already exists
at android.os.Parcel.createException(Parcel.java:2075)
at android.os.Parcel.readException(Parcel.java:2039)
at android.os.Parcel.readException(Parcel.java:1987)
at android.location.ILocationManager$Stub$Proxy.addTestProvider(ILocationManager.java:2022)
at android.location.LocationManager.addTestProvider(LocationManager.java:1461)
at br.com.tupinikimtecnologia.fakegpslocation.feature.mock.view.MapsActivity.setMock(MapsActivity.kt:100)
at br.com.tupinikimtecnologia.fakegpslocation.feature.mock.view.MapsActivity.access$setMock(MapsActivity.kt:34)
at br.com.tupinikimtecnologia.fakegpslocation.feature.mock.view.MapsActivity$onCreate$1.invokeSuspend(MapsActivity.kt:65)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:56)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:738)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
Caused by: android.os.RemoteException: Remote stack trace:
at com.android.server.LocationManagerService.addTestProvider(LocationManagerService.java:3536)
at android.location.ILocationManager$Stub.onTransact(ILocationManager.java:958)
at android.os.Binder.execTransactInternal(Binder.java:1021)
at android.os.Binder.execTransact(Binder.java:994)
2020-11-30 00:25:16.857 13189-13256/br.com.tupinikimtecnologia.fakegpslocation I/Process: Sending signal. PID: 13189 SIG: 9
Run Code Online (Sandbox Code Playgroud)
代码:
override fun onCreate(savedInstanceState: Bundle?) { …Run Code Online (Sandbox Code Playgroud) android ×7
firebase ×2
android-room ×1
androidx ×1
apk ×1
escaping ×1
gradle ×1
jacoco ×1
java ×1
kotlin ×1
mocking ×1
packaging ×1
replace ×1
replaceall ×1
sencha-touch ×1
shiny-server ×1
string ×1
togglebutton ×1