小编stk*_*ent的帖子

为不支持/实现的操作抛出Java的标准异常是什么?

特别是,Exception在这些情况下是否使用了标准子类?

java

281
推荐指数
5
解决办法
14万
查看次数

片段真的需要一个空的构造函数吗?

我有一个Fragment带有多个参数的构造函数.我的应用程序在开发期间工作正常,但在生产中我的用户有时会看到此崩溃:

android.support.v4.app.Fragment$InstantiationException: Unable to instantiate fragment 
make sure class name exists, is public, and has an empty constructor that is public
Run Code Online (Sandbox Code Playgroud)

我可以创建一个空的构造函数,因为这个错误消息建议,但这对我没有意义,因为那时我将不得不调用一个单独的方法来完成设置Fragment.

我很好奇为什么这种崩溃偶尔会发生.也许我使用ViewPager不正确?我Fragment自己实例化所有s并将它们保存在一个列表中Activity.我不使用FragmentManager事务,因为ViewPager我看到的例子并不需要它,并且一切似乎都在开发期间工作.

android android-fragments

252
推荐指数
3
解决办法
10万
查看次数

Kotlin和新的ActivityTestRule:@Rule必须是公开的

我正在尝试在Kotlin中为我的Android应用程序进行UI测试.由于使用ActivityTestRule的新系统,我无法使其工作:它正确编译,并在运行时,我得到:

java.lang.Exception: The @Rule 'mActivityRule' must be public.
    at org.junit.internal.runners.rules.RuleFieldValidator.addError(RuleFieldValidator.java:90)
    at org.junit.internal.runners.rules.RuleFieldValidator.validatePublic(RuleFieldValidator.java:67)
    at org.junit.internal.runners.rules.RuleFieldValidator.validateField(RuleFieldValidator.java:55)
    at org.junit.internal.runners.rules.RuleFieldValidator.validate(RuleFieldValidator.java:50)
    at org.junit.runners.BlockJUnit4ClassRunner.validateFields(BlockJUnit4ClassRunner.java:170)
    at org.junit.runners.BlockJUnit4ClassRunner.collectInitializationErrors(BlockJUnit4ClassRunner.java:103)
    at org.junit.runners.ParentRunner.validate(ParentRunner.java:344)
    at org.junit.runners.ParentRunner.<init>(ParentRunner.java:74)
    at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:55)
    at android.support.test.internal.runner.junit4.AndroidJUnit4ClassRunner.<init>(AndroidJUnit4ClassRunner.java:38)
    at android.support.test.runner.AndroidJUnit4.<init>(AndroidJUnit4.java:36)
    at java.lang.reflect.Constructor.constructNative(Native Method)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
    at android.support.test.internal.runner.junit4.AndroidAnnotatedBuilder.buildAndroidRunner(AndroidAnnotatedBuilder.java:57)
    at android.support.test.internal.runner.junit4.AndroidAnnotatedBuilder.runnerForClass(AndroidAnnotatedBuilder.java:45)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57)
    at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:29)
    at org.junit.runner.Computer.getRunner(Computer.java:38)
    at org.junit.runner.Computer$1.runnerForClass(Computer.java:29)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57)
    at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:98)
    at org.junit.runners.model.RunnerBuilder.runners(RunnerBuilder.java:84)
    at org.junit.runners.Suite.<init>(Suite.java:79)
    at org.junit.runner.Computer.getSuite(Computer.java:26)
    at android.support.test.internal.runner.TestRequestBuilder.classes(TestRequestBuilder.java:691)
    at android.support.test.internal.runner.TestRequestBuilder.build(TestRequestBuilder.java:654)
    at android.support.test.runner.AndroidJUnitRunner.buildRequest(AndroidJUnitRunner.java:329)
    at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:226)
    at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1584)
Run Code Online (Sandbox Code Playgroud)

以下是我宣称的mActivityRule:

RunWith(javaClass<AndroidJUnit4>())
LargeTest
public class RadisTest {

    Rule
    public val mActivityRule: ActivityTestRule<MainActivity> = …
Run Code Online (Sandbox Code Playgroud)

testing android kotlin android-espresso

246
推荐指数
5
解决办法
3万
查看次数

RecyclerView和java.lang.IndexOutOfBoundsException:检测到不一致.三星设备中的视图持有者适配器positionViewHolder无效

我有一个回收站视图,可以在除三星以外的所有设备上完美运行.在三星,我明白了

java.lang.IndexOutOfBoundsException:检测到不一致.视图持有者适配器positionViewHolder无效

当我用另一个活动的回收者视图回到片段时.

适配器代码:

public class FeedRecyclerAdapter extends RecyclerView.Adapter<FeedRecyclerAdapter.MovieViewHolder> {
    public static final String getUserPhoto = APIConstants.BASE_URL + APIConstants.PICTURE_PATH_SMALL;
    Movie[] mMovies = null;
    Context mContext = null;
    Activity mActivity = null;
    LinearLayoutManager mManager = null;
    private Bus uiBus = null;
    int mCountOfLikes = 0;

    //Constructor
    public FeedRecyclerAdapter(Movie[] movies, Context context, Activity activity,
                               LinearLayoutManager manager) {
        mContext = context;
        mActivity = activity;
        mMovies = movies;
        mManager = manager;
        uiBus = BusProvider.getUIBusInstance();
    }

    public void setMoviesAndNotify(Movie[] movies, boolean movieIgnored) {
        mMovies = …
Run Code Online (Sandbox Code Playgroud)

android android-recyclerview

221
推荐指数
13
解决办法
11万
查看次数

命令行/ shell帮助文本是否有"标准"格式?

如果没有,是否有事实上的标准?基本上我正在编写命令行帮助文本,如下所示:

usage: app_name [options] required_input required_input2
  options:
    -a, --argument     Does something
    -b required     Does something with "required"
    -c, --command required     Something else
    -d [optlistitem1 optlistitem 2 ... ]     Something with list
Run Code Online (Sandbox Code Playgroud)

我从基本上只是阅读各种工具的帮助文本中做到了这一点,但是有一个指南列表还是什么?例如,我使用方括号还是括号?如何使用间距?如果参数是一个列表怎么办?谢谢!

shell command-line command-line-arguments

214
推荐指数
6
解决办法
10万
查看次数

不同的保留策略如何影响我的注释?

以明确的方式有谁能解释之间的实际差别java.lang.annotation.RetentionPolicy常数SOURCE,CLASSRUNTIME

我也不完全确定"保留注释"这个短语是什么意思.

java annotations

167
推荐指数
4
解决办法
6万
查看次数

为什么构建类型与产品风格不同?

前言:这不是关于如何在Android应用程序中使用构建类型和产品风格的问题.我理解所涉及的基本概念.这个问题更多的是试图了解应该在构建类型中指定哪个配置,应该在产品风格中指定哪个配置,以及是否实际需要区分.

本周,我一直在了解有关Android应用程序的gradle配置的更多信息.我最初认为我对构建类型和产品口味有很好的处理,但是我越深入到文档中,我就越发现两者之间的区别对我来说根本不清楚.

由于存在明确定义的层次结构(在某种意义上,构建类型中指定的属性优先于产品风格中指定的属性),我不明白为什么需要区分构建类型和产品风格.将所有属性和方法合并到产品风味DSL对象中,然后将构建类型视为(默认)风味维度是不是更好?

一些导致我困惑的具体例子:

  • signingConfig属性可以设置两种类型的建设和产品的口味......但minifyEnabled(和,我想,shrinkResources?)只能在构建类型进行配置.

  • applicationId只能在产品风格中指定...并且applicationIdSuffix只能在构建类型中指定!?

实际问题:

鉴于以上示例:构建类型与产品风格的角色之间是否存在明显区别?

如果是这样,了解它的最佳方法是什么?

如果没有,计划最终是将构建类型和产品风格合并到一个可配置的DSL对象中吗?

android android-gradle-plugin

167
推荐指数
3
解决办法
2万
查看次数

Android - startActivityForResult立即触发onActivityResult

我正在使用电话从我的应用程序中的主要活动启动活动startActivityForResult(intent, ACTIVITY_TYPE),它们都在工作但只有一个.

这个,当被调用时,根据需要启动活动,但在日志中我可以看到它onActivityResult()立即被触发.活动显示但RESULT_CANCELED立即返回onActivityResult().

然后,我与活动互动,按下一个按钮,调用finish(),并且onActivityResult()不叫这个时候(因为很明显的结果已经返回).

这对任何人都有意义吗?以前有人见过这种行为吗?

android android-activity

142
推荐指数
6
解决办法
3万
查看次数

如何在我的Mac上安装pip3?

我正在尝试安装pip3,但我没有运气.此外,我试过sudo install,它没有用.我怎么能在我的Mac上安装pip3?

sudo easy_install pip3
Password:
Searching for pip3
Reading https://pypi.python.org/simple/pip3/
Couldn't find index page for 'pip3' (maybe misspelled?)
Scanning index of all packages (this may take a while)
Reading https://pypi.python.org/simple/

No local packages or download links found for pip3
error: Could not find suitable distribution for Requirement.parse('pip3')
Run Code Online (Sandbox Code Playgroud)

python pip python-3.x

132
推荐指数
9
解决办法
22万
查看次数

如何在AndroidManifest.xml文件中访问BuildConfig值?

是否可以从AndroidManifest.xml访问BuildConfig值?

在我的build.gradle文件中,我有:

defaultConfig {
    applicationId "com.compagny.product"
    minSdkVersion 16
    targetSdkVersion 21
    versionCode 1
    versionName "1.0"

    // Facebook app id
    buildConfigField "long", "FACEBOOK_APP_ID", FACEBOOK_APP_ID
}
Run Code Online (Sandbox Code Playgroud)

FACEBOOK_APP_ID 在我的gradle.properties文件中定义:

# Facebook identifier (app ID)
FACEBOOK_APP_ID=XXXXXXXXXX
Run Code Online (Sandbox Code Playgroud)

要在我的应用中使用Facebook连接,我必须将此行添加到我的AndroidManifest.xml:

<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/applicationId"/> 
Run Code Online (Sandbox Code Playgroud)

我想用gradle中定义@string/applicationId的BuildConfig字段FACEBOOK_APP_ID替换,如下所示:

<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="FACEBOOK_APP_ID"/> 
Run Code Online (Sandbox Code Playgroud)

使用BuildConfig可以吗?如果没有,我怎么能实现这个目标?

android android-xml android-facebook android-gradle-plugin

127
推荐指数
4
解决办法
4万
查看次数