小编Jae*_*ger的帖子

使用Proguard获取警告(使用外部库)

我启用了Proguard,我正在尝试构建APK,我收到了很多警告,不知道如何解决它们.

我正在使用Retrofit,Jsoup和其他库存库,我收到以下警告:

 Warning:okio.DeflaterSink: can't find referenced class org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
 Warning:okio.Okio: can't find referenced class java.nio.file.Files
 Warning:okio.Okio: can't find referenced class java.nio.file.Path
 Warning:okio.Okio: can't find referenced class java.nio.file.OpenOption
 Warning:okio.Okio: can't find referenced class java.nio.file.Path
 Warning:okio.Okio: can't find referenced class java.nio.file.OpenOption
 Warning:okio.Okio: can't find referenced class org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
 Warning:okio.Okio: can't find referenced class java.nio.file.Path
 Warning:okio.Okio: can't find referenced class java.nio.file.OpenOption
 Warning:okio.Okio: can't find referenced class java.nio.file.Path
 Warning:okio.Okio: can't find referenced class java.nio.file.OpenOption
 Warning:okio.Okio: can't find referenced class org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
 Warning:retrofit2.Platform$Java8: can't find referenced method 'boolean …
Run Code Online (Sandbox Code Playgroud)

android proguard

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

Retrofit中的IllegalArgumentException /必须没有替换块

我有以下代码:

    @GET("api.php?company_name={name}")
    Call<Model> getRoms_center(@Query("name") String name);
Run Code Online (Sandbox Code Playgroud)

根据官方文档,我必须使用@Query,我正在使用它,但我收到以下错误:

java.lang.IllegalArgumentException: URL query string "company_name={name}" must not have replace block. For dynamic query parameters use @Query.
Run Code Online (Sandbox Code Playgroud)

android retrofit

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

Atom-beautify未加载php-cs-fixer自定义配置

我已经用PHP-CS-Fixer插件安装了Atom。我正在尝试使用一些自定义规则来应用同一行花括号样式。

我曾尝试使用in-Atom config选项,但无法使其正常工作。我曾尝试position_after_functions_and_oop_constructs将其设置并放入PHP-CS-FIXER RulesAtom中,但是没有用。

因此,我为我的配置设置了一个自定义路径,即 C:\xampp\htdocs\myproject\atom.php_cs

配置为:

<?php

$finder = PhpCsFixer\Finder::create()
    //->exclude('somedir')
    //->notPath('src/Symfony/Component/Translation/Tests/fixtures/resources.php'
    ->in(__DIR__)
;

return PhpCsFixer\Config::create()
    ->setRules([
        '@PSR2' => true,
        'strict_param' => false,
        'array_syntax' => ['syntax' => 'long'],
        'braces' => [
            'allow_single_line_closure' => true, 
            'position_after_functions_and_oop_constructs' => 'same'],
    ])
    ->setFinder($finder)
;
Run Code Online (Sandbox Code Playgroud)

它没有用,Atom没有进行适当的美化。有执行规则的想法吗?

笔记:

我对以下样式感兴趣:

  public function someFunction(){ 
    // code here
}
Run Code Online (Sandbox Code Playgroud)
  • 我使用Windows 10作为OS,Atom是IDE,并通过Composer安装了PHP-cs-fixer。

php atom-beautify

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

QuickMatch onJoinedRoom获取错误2

我正在尝试通过快速匹配进行连接.我已经启用了一切.API已启用,调试密钥和生产密钥将添加到Google API控制台的Oauth2列表中.

启用Real-Multiplayer并发布游戏服务.我在我的游戏中尝试了一些示例代码,而且我正在为用户签名.

我收到错误2 onJoinedRoom

我正在尝试使用以下方式登录:

    public void signInSilently() {
    mGoogleSignInClient.silentSignIn().addOnCompleteListener(getActivity(),
            new OnCompleteListener<GoogleSignInAccount>() {
                @Override
                public void onComplete(@NonNull Task<GoogleSignInAccount> task) {
                    if (task.isSuccessful()) {
                        //onConnected(task.getResult());
                        Utils.logDebug("OnlineFragment.startSignInIntent()","onComplete, isSuccessful.");
                        onConnected(task.getResult());
                    } else {
                        startSignInIntent();
                        Utils.logDebug("OnlineFragment.startSignInIntent()","onComplete, NOT isSuccessful.");
                        task.getException().printStackTrace();
                    }
                }
            });
}
Run Code Online (Sandbox Code Playgroud)

它始终是onConnected

private void onConnected(GoogleSignInAccount googleSignInAccount){
    mRealTimeMultiplayerClient = Games.getRealTimeMultiplayerClient(getActivity(), googleSignInAccount);

    startQuickGame();
}
Run Code Online (Sandbox Code Playgroud)

连接后,我开始新的快速匹配:

    private void startQuickGame() {
    if(getActivity() != null){
        // auto-match criteria to invite one random automatch opponent.
        // You can also specify more opponents (up to 3).
        // TODO: …
Run Code Online (Sandbox Code Playgroud)

android google-play-games

14
推荐指数
0
解决办法
155
查看次数

获取I/art:显式并发标记扫描GC释放

我正在启动service =>后台服务,并开始检查"新线程"中的文件,在日志中我得到以下内容,服务/应用程序暂停.

记录: I/art: Explicit concurrent mark sweep GC freed 25935(1686KB) AllocSpace objects, 13(903KB) LOS objects, 39% free, 13MB/22MB, paused 649us total 43.569ms

它只是扫描SD卡中MyData中的文件,其中包含一堆图片(大约20个图片).

**扫描=获取图片名称并将其保存为字符串.

java android android-service

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

无法加载类'org.gradle.api.internal.component.Usage'

在使用Gradle 4.2升级到最新的稳定版Android Studio之后,我无法完成我的项目或任何事情,并且仍然遇到这些问题.即使我已经创建了一个新项目,也无法做到.

有什么建议?

错误:无法加载类'org.gradle.api.internal.component.Usage'

此意外错误的可能原因包括:

  • Gradle的依赖缓存可能已损坏(这有时会在网络连接超时后发生.)重新下载依赖项并同步项目(需要网络)
  • Gradle构建过程(守护程序)的状态可能已损坏.停止所有Gradle守护进程可以解决此问题.停止Gradle构建过程(需要重启)
  • 您的项目可能正在使用第三方插件,该插件与项目中的其他插件或项目请求的Gradle版本不兼容.
在损坏的Gradle进程的情况下,您还可以尝试关闭IDE,然后终止所有Java进程.

我的gradle的构建:

dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
androidTestImplementation('com.android.support.test.espresso:espresso-    core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
})
implementation project(':libs:searchview')
implementation project(':libs:AndroidImageSlider')

implementation 'com.android.support:design:27.0.2'
implementation 'com.android.support:appcompat-v7:27.0.2'
implementation 'com.android.support:customtabs:27.0.2'
implementation 'com.android.support:cardview-v7:27.0.2'
implementation 'com.android.support:recyclerview-v7:27.0.2'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'

implementation 'com.github.stfalcon:frescoimageviewer:0.5.0'
implementation 'com.facebook.fresco:fresco:1.3.0'
implementation 'com.squareup.picasso:picasso:2.5.2'
implementation 'jp.wasabeef:picasso-transformations:2.1.2'
implementation 'de.hdodenhof:circleimageview:2.2.0'

implementation 'org.jsoup:jsoup:1.9.2'
implementation ('com.squareup.retrofit2:converter-gson:2.0.2'){
    exclude group: 'org.apache.commons', module: 'commons-io'
}
implementation ('com.squareup.retrofit2:retrofit-converters:2.0.2'){
    exclude group: 'org.apache.commons', module: 'commons-io'
}
implementation 'com.squareup.okhttp3:logging-interceptor:3.2.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'

implementation 'com.klinkerapps:drag-dismiss-activity:1.5.0'

implementation 'com.github.deano2390:MaterialShowcaseView:1.2.0'

implementation …
Run Code Online (Sandbox Code Playgroud)

java android android-studio

12
推荐指数
1
解决办法
9936
查看次数

重新启动时保持拖放项目位置

我有一个RecyclerView - Grid,拖放,使用这个代码我已经设法实现了,并做了很多改变,只有一个问题,我无法保存拖动项目位置重新启动(应用程序不是电话 ).我想到的是将"int position"添加到我的item.java构造函数中,但我不能做的是获取更改的位置.

我正在使用链接中提供的相同拖放代码.

    ItemTouchHelper.Callback _ithCallback = new ItemTouchHelper.Callback() {
    //and in your imlpementaion of
    public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
        // get the viewHolder's and target's positions in your adapter data, swap them
        Collections.swap(AllItems, viewHolder.getAdapterPosition(), target.getAdapterPosition());
        // and notify the adapter that its dataset has changed

        rcAdapter.notifyItemMoved(viewHolder.getAdapterPosition(), target.getAdapterPosition());
        return true;
    }

    @Override
    public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) {
        //TODO
    }

    //defines the enabled move directions in each state (idle, swiping, dragging). …
Run Code Online (Sandbox Code Playgroud)

android drag-and-drop android-recyclerview

10
推荐指数
1
解决办法
1736
查看次数

将RecyclerView CardView单击项目数据传递给活动

我有一个关于将点击的cardview数据传递给活动的问题,这里有完整的故事:

  1. 我有一个名为"详细信息"的活动,其中包含2个TextViews的布局,标题和描述.

  2. 我已经设置了一个片段(tab_1),其中包含recyclerview代码和items数据,每个项目包含:标题和描述.

我想要的是 :

当用户单击该项目时,它将打开详细信息活动,并更改详细信息布局标题,单击项目标题,以及相同的描述.

我已经创建了另一个活动作为一个例子,并且意图启动它,再加上"addOnTouchlistener",感谢Stackoverflow,我找到了实现它的方法.

那么,如何使这个活着?我已经在Stackoverflow上尝试了很多可用答案的方法,但是所有这些方法都不起作用,或者与我的请求无关.

这是我的文件:

itemsdata.java:

public class itemsdata {
int CatPic;
String title;
String Descr;
int Exapnd;
int expand_no;
Run Code Online (Sandbox Code Playgroud)

tab_1.java(片段)

public class tab_1 extends Fragment implements SearchView.OnQueryTextListener {

private RecyclerView mRecyclerView;
public RecyclingViewAdapter adapter;
private Activity context;
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    View layout = inflater.inflate(R.layout.tab_1, container, false);
    mRecyclerView = (RecyclerView)layout.findViewById(R.id.recycler_view);
    mRecyclerView.addOnItemTouchListener(new RecyclerItemClickListener
            (getContext(), new RecyclerItemClickListener.OnItemClickListener() {

                @Override
                public void onItemClick(View view, int position) {
                    Intent i = …
Run Code Online (Sandbox Code Playgroud)

java android android-fragments android-cardview android-recyclerview

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

多个字符串替换,不会影响后续迭代中的替换文本

我之前发过关于字母的信,但这是另一个主题,我有一个包含2个对象的json响应,from并且to,from它是要改变的,并且to它将被改变为什么.

我的代码是:

// for example, the EnteredText is "ab b test a b" .
EnteredString = EnteredText.getText().toString();
for (int i = 0; i < m_jArry.length(); i++) {
    JSONObject jo_inside = m_jArry.getJSONObject(i);

    String Original = jo_inside.getString("from");
    String To = jo_inside.getString("to");

    if(isMethodConvertingIn){
        EnteredString = EnteredString.replace(" ","_");
        EnteredString = EnteredString.replace(Original,To + " ");
    } else {
        EnteredString = EnteredString.replace("_"," ");
        EnteredString = EnteredString.replace(To + " ", Original);
    }
}

LoadingProgress.setVisibility(View.GONE);
SetResultText(EnteredString);
ShowResultCardView();
Run Code Online (Sandbox Code Playgroud)

例如,json响应是:

{
    "Response":[ …
Run Code Online (Sandbox Code Playgroud)

java

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

Android Studio - 活动的布局显示翻转(RTL而不是LTR)

我在我的应用程序中有这个问题,这非常奇怪.

我有一个应用程序,当我在Android Studio上按Run时,它会以正确的布局方向启动应用程序.现在,我按下返回按钮并返回到应用程序,它显示RTL布局而不是当前正确的LTR布局.

该应用程序非常简单,它在工具栏中有一个带有NavigationButton的Activity,当它被翻转时,NavigationButton从左向右移动,具有错误的指向方向.

该应用程序是LTR,仅支持英语,并在英语设备上进行测试,同样的结果发生在模拟器上.我有Android Studio的最终版本.

  • 布局,使用工具栏以及导航属性,以启用后退箭头.
  • setContentView的Activity,只显示布局.
  • 在不从BackStack中清除应用程序的情况下,按下或重新打开应用程序会显示可视错误.

是什么导致这个问题?因为代码很简单,没有任何硬核.

清单代码:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.corF.app">
<uses-permission android:name="android.permission.INTERNET"/>
<application
    android:supportsRtl="true"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:theme="@style/AppTheme">
    <activity
        android:name="com.corF.app.activities.ActivityStartup"
        android:label="@string/app_name"
        android:windowSoftInputMode="adjustResize|stateHidden">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>
</manifest>
Run Code Online (Sandbox Code Playgroud)

android android-layout android-studio

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