我最近迁移了我的项目以使用AndroidX,并使用以下文档在gradle上为我的espresso测试配置了测试编排器:
https://developer.android.com/training/testing/junit-runner#using-android-test-orchestrator
我有依赖:
androidTestUtil 'androidx.test:orchestrator:1.1.0-beta01'
Run Code Online (Sandbox Code Playgroud)
但是,我没有执行任何测试,看起来他们在运行gradle时失败运行以下adb shell命令,即:
adb shell 'CLASSPATH=$(pm path android.support.test.services) app_process / \
android.support.test.services.shellexecutor.ShellMain am instrument -w -e \
targetInstrumentation com.example.test/androidx.test.runner.AndroidJUnitRunner \
android.support.test.orchestrator/.AndroidTestOrchestrator'
Run Code Online (Sandbox Code Playgroud)
从上面看:似乎它试图用android支持版本而不是androidx版本执行此命令.
似乎没有记录什么用于androidx.
android android-testing android-espresso androidx androidx-test
我有 2 个片段(片段 A 和片段 B),它们都具有可折叠的工具栏布局和协调器布局中的相应回收站视图。
如果我在我的 recyclerview 中向上滚动(因此 CollapsingToolbarLayout 已经折叠),然后从片段 A 中打开片段 B(将 A 推到 backstack 上)。
当我通过回击返回片段 A 时。CollapsingToolbarLayout/AppBarLayout 始终展开,即使回收器视图位于相同位置。
有人经历过吗?
android-fragments android-recyclerview android-collapsingtoolbarlayout android-appbarlayout
在android中,我想建立一个到HTTPS URL的URL连接.连接打开后,我希望能够从服务器读取证书并获取已发布的通用名称和组织字符串?
这可能吗?如果是这样,最好的方法是什么?
到目前为止,我一直在使用HttpsUrlConnection:
HttpsURLConnection urlConnection = (HttpsURLConnection) url.openConnection();
urlConnection.getInputStream();
X509Certificate cert = (X509Certificate) urlConnection.getServerCertificates()[0];
Run Code Online (Sandbox Code Playgroud)
但在此之后,我不确定如何获得具体的证书细节?如果这是正确的方法,我甚至不确定.
我需要实现一个用户可以输入任何内容的编辑文本,但是当他们键入以"@"开头的新单词时,自动完成应该开始显示潜在用户.
我了解如何使用AutoCompleteTextView函数进行过滤.但是我不知道如何从'@'符号后面的最后一个单词中捕获字符(忽略之前的任何单词).
因此,当从AutoCompleteTextView列表中选择用户时,它应该用'@'替换该单词,例如.
"这是@steve的消息"
当用户点击列表中的"Steve"时,文本应替换为:
"这是给史蒂夫的信息"
我还需要以可以发送到服务器的形式获取字符串.即从上面的例子我需要发送字符串:
"这是[用户名:steve@bloggs.com,id:44]的消息."
我查看了https://github.com/splitwise/TokenAutoComplete
这似乎很适合在列表中键入电子邮件,但我不知道如何满足我的需求.请记住,我需要支持多个/重复提及:
例如
"这是一个消息,史蒂夫和鲍勃.这是消息中的第二句鲍勃 "
如果有人知道或做过这样的事情,我会非常感激!
android autocompletetextview multiautocompletetextview tokenautocomplete
我有一个应用程序具有初始激活,列出列表视图中的一些文件.在列表中单击某个项目时,它会将您带到该特定文件的详细活动.
在详细视图中,我有一个名为download的按钮,当您单击下载时,它会启动一个IntentService,它会将要下载的文件设置为:
downloadButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(AppDetailsActivity.this, AppDownloadService.class);
intent.putExtra(Consts.APP_DOWNLOAD_RECEIVER_KEY, new DownloadReceiver(new Handler()));
startService(intent);
}
});
Run Code Online (Sandbox Code Playgroud)
DownloadReceiver类用于更新下载文件详细活动中的进度条.
现在我想做什么......
如果用户当前正在从详细活动中下载文件,然后返回到上一个活动,我希望活动以某种方式订阅/绑定到同一个IntentService并检索结果,以便它可以在列表中显示进度条正在下载的文件的项目.
我在一个需要获取授权源图像的应用程序中使用通用图像加载器.
到目前为止,我已经使用自己的类扩展了URLConnectionImageDownloader类,并使用我自己的实现方法覆盖了getStreamFromNetwork方法,该实现方法在URLConnection对象中设置了授权标头:
public class authURLConnectionImageDownloader extends URLConnectionImageDownloader {
@Override
public InputStream getStreamFromNetwork(URI imageUri) throws IOException {
String auth = Base64.encodeToString(("username" + ":"+"psswd").getBytes(), Base64.NO_WRAP);
URLConnection conn = imageUri.toURL().openConnection();
conn.setRequestProperty("Authorization", "Basic " + auth);
conn.setConnectTimeout(DEFAULT_HTTP_CONNECT_TIMEOUT);
conn.setReadTimeout(DEFAULT_HTTP_READ_TIMEOUT);
return new FlushedInputStream(new BufferedInputStream(conn.getInputStream(), BUFFER_SIZE));
}
Run Code Online (Sandbox Code Playgroud)
并设置我的ImageLoader ...
imageLoader = ImageLoader.getInstance();
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(MainActivity.this)
.imageDownloader(new authURLConnectionImageDownloader())
.build();
imageLoader.init(config);
Run Code Online (Sandbox Code Playgroud)
到目前为止,我无法让它工作.图像未下载.但更重要的是,我在getStreamFromNetwork()中放了一个断点,它永远不会被击中?我究竟做错了什么?
我正在构建一个Android应用程序,我需要使用指纹api通过用户名和密码(在备份上)对用户进行身份验证.
这是我用最简单的术语理解我需要做的事情.
在用户输入用户名和密码并使用后端成功验证后登录时,我生成并将具有这些凭据的特定密钥库存储到androidkeystore.
在下次登录时,如果用户通过指纹成功进行身份验证,则从android密钥库中检索凭据(用户名和密码),并使用这些凭据在后端对用户进行身份验证.
我已经关注:http: //www.techotopia.com/index.php/An_Android_Fingerprint_Authentication_Tutorial
这给出了如何使用指纹API通过设备对用户进行身份验证的一个很好的示例.但是如何获取凭据,以便我可以使用后端对用户进行身份验证?
我想做什么的步骤,建议或详细示例?
谢谢.
android android-authenticator android-keystore android-security android-fingerprint-api
我有一个包含 TimeField 对象的模型。我还有一个 django 模板,它以 JSON 格式列出时间字段,例如
...
"time":"{{ mymodel.mytime }}",
...
Run Code Online (Sandbox Code Playgroud)
不指定任何格式/过滤器等,这会导致以下例如
....
"time":"5 p.m.",
....
Run Code Online (Sandbox Code Playgroud)
但是,当我将时间过滤器应用于我的模板时,即
...
"time":"{{ mymodel.mytime|time:"H:i" }}",
...
Run Code Online (Sandbox Code Playgroud)
我得到以下结果:
...
"time":"",
...
Run Code Online (Sandbox Code Playgroud)
即我的时间价值被抹去。我不确定发生了什么?我在同一个模型中也有一个日期字段,我应用的过滤器(在同一个 django 模板中)按定义工作。
我正在使用 Django 1.4.2
我错过了什么或做错了什么?
android ×7
android-collapsingtoolbarlayout ×1
android-menu ×1
androidx ×1
django ×1
httpclient ×1