小编Bor*_*jev的帖子

从android中的上下文获取活动

这个让我难过.

我需要在自定义布局类中调用activity方法.这个问题是我不知道如何从布局中访问活动.

ProfileView

public class ProfileView extends LinearLayout
{
    TextView profileTitleTextView;
    ImageView profileScreenImageButton;
    boolean isEmpty;
    ProfileData data;
    String name;

    public ProfileView(Context context, AttributeSet attrs, String name, final ProfileData profileData)
    {
        super(context, attrs);
        ......
        ......
    }

    //Heres where things get complicated
    public void onClick(View v)
    {
        //Need to get the parent activity and call its method.
        ProfileActivity x = (ProfileActivity) context;
        x.activityMethod();
    }
}
Run Code Online (Sandbox Code Playgroud)

ProfileActivity

public class ProfileActivityActivity extends Activity
{
    //In here I am creating multiple ProfileViews and adding them …
Run Code Online (Sandbox Code Playgroud)

android view hierarchy android-layout android-activity

169
推荐指数
6
解决办法
29万
查看次数

可以在单个execSQL查询中指定的SQL变量的限制是多少

我正在努力提高我的android数据库插入速度.我目前正在做的是生成一个字符串,如:

SELECT ? as title, ? as musician_id, ? as album_id, ? as genre
UNION SELECT ?, ?, ?, ?
UNION SELECT ?, ?, ?, ?
UNION SELECT ?, ?, ?, ?
UNION SELECT ?, ?, ?, ?
UNION SELECT ?, ?, ?, ?
Run Code Online (Sandbox Code Playgroud)

然后执行它

SQLiteDatabase database = //initialized in some way
String insertQuery; // the string of the query above
String [] parameters; // the parameters to use in the insertion.
database.execSQL(insertQuery.toString(), parameters);
Run Code Online (Sandbox Code Playgroud)

当我尝试插入大约2000行时,我收到以下错误:

Caused by: android.database.sqlite.SQLiteException: too many …
Run Code Online (Sandbox Code Playgroud)

sqlite android android-sqlite

21
推荐指数
2
解决办法
8014
查看次数

如果测试失败,使Android jenkins构建失败

我所看到的关于使得如果单元测试执行失败(例如,这詹金斯构建失败几个后一个).事实证明,默认情况下Jenkins会报告构建失败的测试unstable,有些人不喜欢这样.然而,这对我来说完全没问题.我只是希望能够通过测试失败来轻松区分构建和测试.

这里有一个问题:我正在为Android开发,所以我的构建是在此页面之后配置的.基本上,测试使用以下命令运行:

ant all clean emma debug install test
Run Code Online (Sandbox Code Playgroud)

结果覆盖率报告在Jenkins中生成并发布.

我读过的关于根据测试结果配置Jenkins结果的所有帖子都涉及到ant任务操作.但是,如果我们看一下android build.xml,Android测试是用adb命令运行的:adb shell am instrument ....我不知道如何配置此命令来打印测试结果.它可以配置为打印覆盖率报告.我已经这样做了,但根据覆盖率报告,从未能够使构建失败.

我希望其他人也遇到同样的问题并设法解决它.任何指导将非常感谢.

ant junit android hudson jenkins

17
推荐指数
1
解决办法
2763
查看次数

使hibernate反引所有表/列名称

我面临着与MySQL 5.0一起编写的遗留系统,现在需要将其迁移到MysQL 5.5(要求).我发现有一列被命名maxvalue,这似乎是MySQL 5.5中的系统字.因此,包含此列的所有Hibernate查询都会出现语法错误:

引起:java.sql.BatchUpdateException:您的SQL语法中有错误; 检查与MySQL服务器版本对应的手册,以便在'maxvalue附近使用正确的语法

似乎Hibernate并不会自动反复引用`围绕字段名称.如果我提取查询,则反引用`maxvalue`它在MySQL 5.5中正确运行.

我找到了解决方案如何明确强制特定字段/表的反引号.问题是我不确定有多少其他列名会产生这样的问题.有没有办法告诉Hibernate自动反引所有表/列名?(这将生成有效的SQL,我不知道为什么默认情况下它没有为MySQL做到这一点).

编辑:这个讨论几乎让我相信我想要的是不可能的.

java mysql hibernate escaping

15
推荐指数
1
解决办法
8878
查看次数

Android"java.lang.RuntimeException:Parcelable visitedClassNotFoundException读取Serializable对象"

我有一个Android应用程序,我在其中添加了一个枚举:

public enum RootNavigationOption {
    HOME(R.string.home, R.drawable.ic_home), SETTINGS(R.string.settings, R.drawable.ic_settings), LOGOUT(
            R.string.logout_label, R.drawable.ic_logout);

    private int navigationOptionLabelResId;
    private int navigationOptionImageResId;

    private RootNavigationOption(int navigationOptionLabelResId, int navigationOptionImageResId) {

        this.navigationOptionLabelResId = navigationOptionLabelResId;
        this.navigationOptionImageResId = navigationOptionImageResId;
    }

    public int getNavigationOptionLabelResId() {
        return navigationOptionLabelResId;
    }

    public int getNavigationOptionImageResId() {
        return navigationOptionImageResId;
    }

    public static int getValuePosition(RootNavigationOption filterOption) {
        int idx = 0;
        for (RootNavigationOption navigationOptionIter : values()) {
            if (navigationOptionIter.equals(filterOption)) {
                return idx;
            }
            idx++;
        }
        return 0;
    }
}
Run Code Online (Sandbox Code Playgroud)

我把这个枚举放在了几个意图包中,以便与我的主要活动进行交流.我的enum解决方案中已经有一个这样的,这不会导致任何问题.但是,当我使用这个新enum的定义运行我的应用程序时,它会立即崩溃:

 java.lang.RuntimeException: Parcelable …
Run Code Online (Sandbox Code Playgroud)

java enums android android-intent classnotfoundexception

12
推荐指数
2
解决办法
6246
查看次数

在Android Studio中无限安装

最近,我正在考虑将我的工作标题从“ Android Developer”更改为“ Endless install progress watcher”。

当我尝试运行我的应用程序或测试Android Studio时,发生的情况越来越频繁,如下图所示:

在此处输入图片说明

这一进步将永远保持下去。过去,如果我断开设备并再次连接,则下一次尝试将成功。现在通常情况下,我需要多次重新连接才能运行。

猜测是问题是由于亚行以某种方式挂起和失去连接,但我不知道该如何克服。

我的配置是:-Ubuntu Linux,但同事在Mac OS上也有相同的体验,例如-Android Studio 3.5-设备是Nexus 5X,但在许多其他设备上也是如此

android adb android-studio

11
推荐指数
1
解决办法
329
查看次数

指定Jackson的字段命名策略

我有问题与使用杰克逊的bean到json序列化/反序列化有关.以前我用GSON要做到这一点,但现在我面对的已经依赖于杰克逊一个项目,我宁愿不引进新的依赖,如果我可以用我已经在做手工.

所以想象我有一个像这样的豆:

class ExampleBean {
   private String firstField;
   private String secondField;
   // respective getters and setters
}
Run Code Online (Sandbox Code Playgroud)

然后杰克逊将其序列化为:

{
   "firstField": "<first_field_value>",
   "secondField": "<second_field_value>"
}
Run Code Online (Sandbox Code Playgroud)

我使用以下代码生成上述结果:

ExampleBean bean;
...
ObjectMapper mapper = new ObjectMapper();
mapper.writeValue(outStream, bean);
Run Code Online (Sandbox Code Playgroud)

但是,我希望(我预期)获得以下序列化:

{
   "first_field": "<first_field_value>",
   "second_field": "<second_field_value>"
}
Run Code Online (Sandbox Code Playgroud)

我故意简化了我的例子,但是我想要序列化的bean有很大的层次结构,我想指定序列化的属性应该总是在snake_style中(即带有下划线),并且相应的bean字段应该始终是camelCased.有没有什么办法可以强制执行这样的字段/属性命名策略并使用它们而不为每个字段添加相应的属性?

java json jackson

8
推荐指数
1
解决办法
4991
查看次数

Java中C++ map.lower_bound的等价物

我的问题非常基本,但我自己找不到解决方案.

我习惯用C++编写算法.在那里,我经常使用该std::map结构以及它提供的所有辅助方法.

此方法将迭代器返回到地图的第一个元素,其中键> =到作为参数给出的键.例:

map<int, string> m;
// m = { 4 => "foo", 6 => "bar", 10 => "abracadabra" }
m.lower_bound(2); // returns iterator pointing to <4, "foo">
m.lower_bound(4); // returns iterator pointing to <4, "foo">
m.lower_bound(5); // returns iterator pointing to <6, "bar">
Run Code Online (Sandbox Code Playgroud)

很酷的是,C++地图基于红黑树,因此查询是对数(O(log n)).

现在我需要在Java中实现某种算法.我需要与我刚才描述的功能类似的功能.我知道我可以使用TreeMap在有序树中实现的.但是我似乎没有找到相应的方法lower_bound.有这样的吗?

非常感谢您的帮助.

c++ java map treemap

8
推荐指数
1
解决办法
3191
查看次数

什么是 Android 11 的“/dev/null”等价物

Android 11 对文件存储和访问进行了多项更改。显然,其中之一是不能再将输出定位到“/dev/null”(我的场景实际上在这个老问题中得到了准确解释)。

尽管引用的问题解决了特定问题,但有一件事仍未得到解答:Android 11 相当于“/dev/null”是什么。也就是说,如果不需要特定操作的输出(在我们的例子中,它是一个创建大文件的操作)。

android dev-null android-11

8
推荐指数
1
解决办法
204
查看次数

Ruby方式在字符串数组中分组anagrams

我实现了一个分组字谜的功能.简而言之:

输入:['cars','for','potato','racs','four','scar','cream',scream']

输出:[["cars","racs","scar"],["four"],["for"],["potato"],["cream","scream"]]

我想知道是否有更好的方法来做到这一点.我真的觉得我用太多的重复语句:until,select, delete_if.有没有办法结合selectdelete_if声明?这意味着,可以自动删除所选项目吗?

码:

def group_anagrams(words)
  array = []
  until words.empty? 
    word = words.first
    array.push( words.select { |match| word.downcase.chars.sort.join.eql?(match.downcase.chars.sort.join ) } )
    words.delete_if { |match| word.downcase.chars.sort.join.eql?(match.downcase.chars.sort.join ) }
  end
  array
end
Run Code Online (Sandbox Code Playgroud)

提前致谢,

ruby ruby-on-rails anagram

7
推荐指数
1
解决办法
6614
查看次数