小编Mik*_*679的帖子

MockWebServer在Gradle构建中引发错误

我的gradle文件中的此项:

androidTestCompile ('com.squareup.okhttp:mockwebserver:2.7.0')
Run Code Online (Sandbox Code Playgroud)

抛出错误:

Warning:Conflict with dependency 'com.squareup.okio:okio'. Resolved versions for app (1.8.0) and test app (1.6.0) differ. See http://g.co/androidstudio/app-test-app-conflict for details.
Run Code Online (Sandbox Code Playgroud)

我尝试注释掉gradle文件中的不同编译项,以找出哪个冲突,但是我找不到使用com.squareup.okio:okio的哪个。

更新:我能够通过运行获取依赖项:gradlew.bat app:dependencies> c:\ tmp \ output.txt

+--- com.squareup.retrofit2:retrofit:2.0.0 -> 2.1.0
|    \--- com.squareup.okhttp3:okhttp:3.3.0
|         \--- com.squareup.okio:okio:1.8.0


--- com.squareup.okhttp:mockwebserver:2.7.0
|    +--- com.squareup.okhttp:okhttp:2.7.0
|    |    \--- com.squareup.okio:okio:1.6.0
Run Code Online (Sandbox Code Playgroud)

如您所见,改造2.0使用okhttp3,而okhttp3使用okio:1.8.0。另一方面,mockwebserver:2.7.0使用okhttp:2.7.0,后者使用okio:1.6.0。那么我该如何解决呢?

这是我的gradle文件的“ dependencies”部分中的条目:

compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.android.support:appcompat-v7:24.2.1'


        //retrofit
        compile 'com.squareup.retrofit2:retrofit:2.0.0'
        compile 'com.squareup.retrofit2:converter-gson:2.+'
        compile 'com.squareup.retrofit2:adapter-rxjava:2.+'
        compile 'com.squareup.retrofit2:retrofit-mock:2.+'



        //recycler view
        compile 'com.android.support:recyclerview-v7:+'

        //picasso image caching
        compile 'com.squareup.picasso:picasso:2.5.2'


        //jackson parser
        compile ( …
Run Code Online (Sandbox Code Playgroud)

android conflicting-libraries gradle mockwebserver

5
推荐指数
1
解决办法
1281
查看次数

RxJava flatmap:如何根据第一次调用的结果进行多次调用

我有 2 个改装电话需要进行 A 和 B:

(A):返回一个ArrayList

(B): 获取(A) 的结果,它是一个ArrayList。(B) 遍历 ArrayList 并使用每个进行改造调用并将结果数据组合成最终的 ArrayList 发送给我的订阅者 onNext()

我在语法正确时遇到了麻烦......例如,我试图返回 arAllMedia,但我下面的代码希望我返回一个 Observable。

ServiceFactory.createRetrofitService().getUserFollowing(sessionMgr.getAuthToken())
                .flatMap(new Func1<UserSelfFollows, Observable<? extends ArrayList<Media.MediaData>>>() {
                    @Override
                    public Observable<? extends ArrayList<Media.MediaData>> call(UserSelfFollows userSelfFollows) {

                        //make second requests based on response from First request to get all Users
                        ArrayList<Media.MediaData> arAllMedia = new ArrayList<>();
                        for(UserSelfFollows.UserDataFollows user : userSelfFollows.userdata){

                            Response <ResponseBody> response ;
                            Call <ResponseBody> call;
                            try {
                                call = ServiceFactory.createRetrofitService().getMediaOfUser(user.id,sessionMgr.getAuthToken());
                                response =  call.execute();
                            }catch(IOException ex){
                                return Observable.error(ex);
                            }

                            if (response.isSuccessful()) {

                                try …
Run Code Online (Sandbox Code Playgroud)

android rx-java retrofit2

5
推荐指数
1
解决办法
1277
查看次数

Android Layout - 设置图像按钮之间的间距

我在酒吧顶部有四个按钮(背景图像).我正在尝试做的是增加按钮之间的间距(因此它们分散在横条上)并将重力设置为center_horozontal.我在ImageButtons(okcancelbar_button_home)上尝试paddingLeft和paddingRight,但它似乎没有做任何事情.我想也许Image Buttons父母是关键,但我不知道该在那里设置什么.这是我的布局:

                        ///////// main .xml //////////////////

                <merge
                    xmlns:android="http://schemas.android.com/apk/res/android">


                    <com.onesix.test.OkCancelBar
                        android:layout_width="fill_parent" 
                        android:layout_height="60dip" 
                        android:layout_gravity="top"

                        android:paddingTop="0dip"
                        android:gravity="center_horizontal"

                        android:background="@drawable/header_bkgrnd"
                    />

                    <!--"#AA000000"-->
                </merge>




                ////////// okCancelBar ////////////////


                <merge xmlns:android="http://schemas.android.com/apk/res/android">
                    <include
                        layout="@layout/okcancelbar_button_home"
                        android:id="@+id/okcancelbar_home" 
                        android:layout_height="90dip" />

                    <include
                        layout="@layout/okcancelbar_button_lists"
                        android:id="@+id/okcancelbar_lists" 
                        android:layout_height="90dip"
                        />

                      <include
                        layout="@layout/okcancelbar_button_calendar"
                        android:id="@+id/okcancelbar_calendar" 
                        android:layout_height="90dip"
                        />

                     <include
                        layout="@layout/okcancelbar_button_search"
                        android:id="@+id/okcancelbar_search" 
                        android:layout_height="90dip"
                        />
                </merge>



                ////////////// okcancelbar_button_home ////////////////
                <?xml version="1.0" encoding="utf-8"?>
                <ImageButton 
                    xmlns:android="http://schemas.android.com/apk/res/android"
                    android:id="@+id/but_home"
                    android:layout_width="75dip"
                    android:layout_height="60dip"
                    android:layout_alignParentBottom="true"
                    android:background="@android:color/transparent"
                    android:src="@drawable/button_menu_states_home"
                    android:paddingLeft="7dip"
                    android:paddingRight="7dip"
                    />



                ////////////button_menu_states_home/////////

                <?xml version="1.0" encoding="utf-8"?>
                 <selector xmlns:android="http://schemas.android.com/apk/res/android">
                     <item android:state_pressed="true"
                           android:drawable="@drawable/menu_button_home1_over" /> <!-- pressed -->
                     <item android:state_focused="true"
                           android:drawable="@drawable/menu_button_home1_over" /> <!-- focused …
Run Code Online (Sandbox Code Playgroud)

button sizing android-layout

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

Android:活动之间没有转换?

有没有办法在活动之间没有过渡?换句话说,没有褪色或滑出但瞬间改变.因此,例如,如果在活动1和活动2中具有相同的按钮栏,则看起来按钮栏从未更改过.

谢谢

android transition

4
推荐指数
1
解决办法
2483
查看次数

带有9-Patch背景的按钮不包含内容

好的我有一个Button,它使用一个选择器作为它的背景.我将宽度和高度设置为wrap_content.内容是我设置的一些文字.我希望按钮在文本周围像原生按钮一样大小,但按钮很大,基本上看起来和它的源图像一样大.按钮图像是九个补丁图像,按钮xml在相对布局内.我在这里错过了什么?

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_focused="true" android:state_pressed="false" android:drawable="@drawable/holo_btn" />
        <item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/holo_btn" />
        <item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/holo_btn" />
        <item android:drawable="@drawable/holo_btn" />
</selector>



<Button android:id="@+id/btnTaskPriorityLow" 
            android:paddingLeft="@dimen/paddingSmallButton" android:paddingRight="@dimen/paddingSmallButton"
            android:text="@string/strTaskPriorityLow"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:layout_below="@id/textViewCalColor"
            android:layout_toRightOf="@+id/textViewPriority"
            android:layout_marginTop="@dimen/marginTopAppt"
            android:background="@drawable/button_holo_sel"/>
Run Code Online (Sandbox Code Playgroud)

size android button custom-controls

4
推荐指数
1
解决办法
3921
查看次数

Android:字节分配内存不足(android.graphics.Bitmap)

我将应用程序带回到视野中,一段时间后它在后台闲置,我注意到它很慢,然后才响应.那么我检查了logcat,我看到
"557296字节分配的内存不足".在我的应用程序空闲之前我做的最后一件事是在我的数据库中的几个表中添加几条记录.但是,我的logcat中的最后一行是在内存错误之前与位图有关吗?..."android.graphics.Bitmap.createBitmap".我不知道如何开始追踪这一点.

11-07 20:32:22.940: D/PMS(599): acquireWL(42e31570): PARTIAL_WAKE_LOCK  CM_static 0x1 13857 10166
    11-07 20:32:22.950: D/PMS(599): releaseWL(42e31570): PARTIAL_WAKE_LOCK  CM_static 0x1
    11-07 20:32:23.060: E/dalvikvm(16038): can't open /data/misc/app_oom.hprof: Permission denied
    11-07 20:32:23.100: E/dalvikvm-heap(16038):  hprofDumpHeap failed with result: -1 
    11-07 20:32:23.100: E/dalvikvm-heap(16038): After hprofDumpHeap for process
    11-07 20:32:23.100: E/dalvikvm(16038): Out of memory: Heap Size=196608KB, Allocated=188196KB, Limit=196608KB, Proc Limit=196608KB
    11-07 20:32:23.100: E/dalvikvm(16038): Extra info: Footprint=196512KB, Allowed Footprint=196608KB, Trimmed=2828KB
    11-07 20:32:23.200: I/dalvikvm-heap(16038): Clamp target GC heap from 193.013MB to 192.000MB
    11-07 20:32:23.200: I/dalvikvm-heap(16038): Forcing collection of SoftReferences …
Run Code Online (Sandbox Code Playgroud)

android byte allocation out-of-memory

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

Java从字符串的开头和结尾删除所有非字母数字字符

我知道如何替换字符串中的所有非字母数字字符,但是如何从字符串的开头和结尾开始呢?

我需要这个字符串:

"theString"

成为:

theString

替换字符串中的所有非字母数字字符:

s = s.replaceAll("[^a-zA-Z0-9\\s]", "");
Run Code Online (Sandbox Code Playgroud)

java regex string replace alphanumeric

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

Android-MPChartLibrary“没有可用的图表数据”文本大小

我没有看到 \xe2\x80\x9cNo Chart data available\xe2\x80\x9d 文本的任何设置方法。如何使文本变大/变小?

\n

android mpandroidchart

3
推荐指数
1
解决办法
1473
查看次数

RxJava:如何运行两个顺序调用:第二个依赖于第一个

我需要创建一个observable,其中依次运行2个基于改进的调用块.我知道我可以在一个Observer调用中运行第二个改装调用,但它会非常混乱.我将Observable代码放在与调用者不同的类中,它返回一个Observable.我想将第一个调用的结果传递给第二个调用,然后在第二个调用完成后将一个Observable传递给调用类.(我使用的是Java 7而不是8)

public class GetFollowing {

 public Observable< ArrayList<Media> >  init() {
    return Observable.create(
                    new Observable.OnSubscribe< ArrayList<Media> >() {
                        @Override
                        public void call(Subscriber<? super  ArrayList<Media> > subscriber) {

...
Run Code Online (Sandbox Code Playgroud)

我还需要将一个不同的类型传递回调用类,而不是传递给第二个改装调用.我一直在阅读有关map flatMap和concat的内容,但我似乎无法弄清楚如何在我这里使用它们.

UPDATE

我想出了这个,不确定它是否最优雅,或者它是否会起作用......但如果它确实有效,有没有办法将第一个可观察的结果传递给第二个?如果第一个观察失败,我将如何处理问题?

Observable< ArrayList<Media> > test;

         Observable.concat(

                Observable.create(
                        new Observable.OnSubscribe< ArrayList<User> >() {
                            @Override
                            public void call(Subscriber<? super  ArrayList<User> > subscriber) {

                            }
                        }
                ),
                 test = Observable.create(
                        new Observable.OnSubscribe< ArrayList<Media> >() {
                            @Override
                            public void call(Subscriber<? super  ArrayList<Media> > subscriber) {

                            }
                        }
                )

        );

        return test; 
Run Code Online (Sandbox Code Playgroud)

java observable rx-java

3
推荐指数
1
解决办法
3211
查看次数

Android Studio 4.0.1:构建失败:不推荐使用选项“android.databinding.enableV2”

我最近升级到 Android Studio 4.0.1 并且我的构建不断失败并显示以下消息:

不推荐使用选项“android.databinding.enableV2”。当前默认值为“真”。它已从当前版本的 Android Gradle 插件中删除。删除了数据绑定 v1。

我尝试添加:

android.enableExperimentalFeatureDatabinding = false
android.databinding.enableV2=false
Run Code Online (Sandbox Code Playgroud)

到 gradle.properties 和 gradle-wrapper.properties。但都没有解决问题。是否有必须从 build.gradle 添加或删除的内容?

android-build build.gradle android-databinding android-studio-4.0

2
推荐指数
1
解决办法
2087
查看次数