小编Mar*_*era的帖子

选择并测试java反编译器

现在我正在尝试找到最好的java反编译器,我发现了这些:

使用这些反编译器,我处理此类的字节代码:

public class ss
{
public static void main(String args[])
{
  try{
   System.out.println("try");

  }
  catch(Exception e)
  {
   System.out.println("catch");
  }
  finally
  {System.out.println("finally");}
}
}
Run Code Online (Sandbox Code Playgroud)

我得到了以下结果:

fernflower:

public class ss {

   public static void main(String[] var0) {
      try {
         System.out.println("try");
      } catch (Exception var5) {
         System.out.println("catch");
      } finally {
         System.out.println("finally");
      }

   }
}
Run Code Online (Sandbox Code Playgroud)

DJ Java Decompiler:

import java.io.PrintStream;

public class ss
{

    public ss()
    {
    }

    public static void main(String args[])
    {
        System.out.println("try");
        System.out.println("finally");
        break MISSING_BLOCK_LABEL_50;
        Exception …
Run Code Online (Sandbox Code Playgroud)

java decompiler

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

如何在应用程序的二进制文件中存储秘密API密钥?

我正在为Mac OS X创建一个Twitter客户端,我有一个消费者秘密.根据我的理解,我不应该分享这个秘密密钥.问题是,当我把它作为字符串文字放入我的应用程序并使用它时,如下所示:

#define QQTwitterConsumerSecret @"MYSECRETYOUMAYNOTKNOW"

[[QQTwitterEngine alloc] initWithConsumerKey:QQTwitterConsumerKey consumerSecret:QQTwitterConsumerSecret];
Run Code Online (Sandbox Code Playgroud)

它位于我的应用程序的二进制文件的数据部分.黑客可以阅读此内容,反汇编应用程序等.

有没有安全的存储消费者秘密的方法?我应该加密吗?

twitter binary api-key secret-key

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

在运行时设置字体,Textview

如何将字体设置为在运行时创建的textview?

我创建了textview

Textview tv = new TextView(this);      
tv.setTextSize(20);
Run Code Online (Sandbox Code Playgroud)

就像我可以改变
我希望将字体样式设置为"Verdana"的大小.

这该怎么做??尊重希什尔

fonts android textview

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

Android/iOS Peer-To-Peer架构

这是一个广泛的问题,我发现了很多关于这个主题的信息.

可能的技术

这些都没有完全实现的对等库,或者我没有找到这样的.
事实上,我对任何类型的游戏库都不感兴趣(我没有针对这些问题)

我考虑过的问题

我想在尽可能多的设备之间进行有效通信,而无需使用移动数据(3G,HS*PA,LTE)或WIFI AP作为中间点.
而不是远距离连接人,真的就像PAN通过蓝牙.

因此,我需要具备哪些功能

  • 完全离线(不需要任何移动数据服务或wifi AP)
  • 跨平台兼容性(Android,iOS)
  • 移动操作系统向后兼容性(Android自2.3以来,iOS自5.1.1以来)

我想要的功能

  • 路由优化(OSPF,MME,...)
  • 不要求设备授权进行网络连接(参见Android 不安全的BT RFCOMM)
  • 可能包含多达数十个用户(最大20-30或更多,如果可能的话)
  • 如果需要,网络可能会选择自己的领导者(服务器节点)?

目前有什么我可以用于提到的功能吗?

android p2p bluetooth ios alljoyn

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

比较方法违反了其总合同!仅限Java 7

我知道这已经有一段时间了,并且检查了我以前得到的所有答案,但是这个仍然不起作用.

对象'船员'代表有船员和其他物品的船员.比较应该通过比较'assigned_rank',一个int值,如果这两个实例中的值相等,那么'is_trainer',一个布尔值,应该有所不同.

只要它运行java <7,这种方法就很有效.但是从Java 7开始我就得到了这个:

java.lang.IllegalArgumentException: Comparison method violates its general contract!
at java.util.ComparableTimSort.mergeLo(ComparableTimSort.java:714)
at java.util.ComparableTimSort.mergeAt(ComparableTimSort.java:451)
at java.util.ComparableTimSort.mergeCollapse(ComparableTimSort.java:376)
at java.util.ComparableTimSort.sort(ComparableTimSort.java:182)
at java.util.ComparableTimSort.sort(ComparableTimSort.java:146)
at java.util.Arrays.sort(Arrays.java:472)
at java.util.Collections.sort(Collections.java:155)
at dormas_flightlog.Query.getCrew(Query.java:714)
Run Code Online (Sandbox Code Playgroud)

这是源代码,其中一些有潜在危险的部分已经被评论过,但它仍然不起作用:

public class crew implements Serializable, Comparable<crew> {

private static final long serialVersionUID = 36L;
private int flightID = 0;
private int assigned_rank = 25;
private boolean is_trainer = false;
...


@Override
public int compareTo(crew him) {

    int myRank = this.getAssigned_rank();
    int hisRank = him.assigned_rank;

    if (this == him) {
        return 0; …
Run Code Online (Sandbox Code Playgroud)

compareto java-7

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

com.google.android.gms.internal.zzhu:找不到引用的类android.security.NetworkSecurityPolicy

我尝试使用proguard生成一个apk,但是在尝试构建时我遇到了这个错误:

Warning: com.google.android.gms.internal.zzhu: can't find referenced class android.security.NetworkSecurityPolicy

Warning: there were 3 unresolved references to classes or interfaces.
You may need to add missing library jars or update their versions.         If your code works fine without the missing classes, you can suppress         the warnings with '-dontwarn' options.

(http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedclass)
:app:proguardRelease FAILED
Error:Execution failed for task ':app:proguardRelease'.
java.io.IOException: Please correct the above warnings first.
Run Code Online (Sandbox Code Playgroud)

最近,我升级了我的Android SDK工具.在此之前,这个项目没有提出proguard的问题.我找到了这篇帖子(https://plus.google.com/+PaulBurke/posts/T3vmAnRP3q6),其中Oliver Renner写道:

"所以基本上下一个谷歌库可能无法升级到最新版本.它似乎还需要compileSdk 23才能在不修改的情况下使用ProGuard(警告:com.google.android.gms.internal.zzhu:can找不到引用类android.security.NetworkSecurityPolicy)"*

我更新了我的项目以使用SDK 23进行编译,但问题没有解决.

贝娄,我包含了build.gradle文件的一些部分:

compileSdkVersion 23
    buildToolsVersion "23.0.0"

    defaultConfig {
        applicationId "com.sample.sample" …
Run Code Online (Sandbox Code Playgroud)

android proguard

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

Android对话框号码选择器

是否有任何经过测试和使用的组件可以用来显示"Count selector"这样的?
我们的目标是让它从API v7开始运行.

在此输入图像描述

(取自DatePickerDialog)

user-interface android counter components

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

Android支持v4 22.2.0的Proguard配置

在更新Gradle Android版本的依赖关系以使用com.android.support:support-v4:22.2.0本地Maven extras存储库(在SDK中)之后,Proguard开始抛出这些问题.

Warning: android.support.v4.app.DialogFragment: can't find referenced class android.support.v4.app.DialogFragment$DialogStyle
Warning: android.support.v4.app.FragmentTransaction: can't find referenced class android.support.v4.app.FragmentTransaction$Transit
Warning: android.support.v4.view.ViewCompat: can't find referenced class android.support.v4.view.ViewCompat$ResolvedLayoutDirectionMode
Warning: android.support.v4.view.ViewCompat: can't find referenced class android.support.v4.view.ViewCompat$LayoutDirectionMode
Warning: android.support.v4.view.ViewCompat: can't find referenced class android.support.v4.view.ViewCompat$LayerType
Warning: android.support.v4.view.ViewCompat: can't find referenced class android.support.v4.view.ViewCompat$AccessibilityLiveRegion
Warning: android.support.v4.view.ViewCompat: can't find referenced class android.support.v4.view.ViewCompat$ImportantForAccessibility
Warning: android.support.v4.view.ViewCompat: can't find referenced class android.support.v4.view.ViewCompat$OverScroll
Warning: android.support.v4.widget.DrawerLayout: can't find referenced class android.support.v4.widget.DrawerLayout$EdgeGravity
Warning: android.support.v4.widget.DrawerLayout: can't find referenced class android.support.v4.widget.DrawerLayout$LockMode
Warning: android.support.v4.widget.DrawerLayout: can't find referenced …
Run Code Online (Sandbox Code Playgroud)

java android proguard gradle maven

21
推荐指数
1
解决办法
8153
查看次数

如何动态地向使用XML创建的视图添加元素

我正在尝试将动态内容添加到使用XML创建的视图中.

我有一个视图"profile_list",它有一个我想添加一些元素的ScrollView.

这是我正在尝试做的一些代码.

// Find the ScrollView 
ScrollView sv = (ScrollView) this.findViewById(R.id.scrollView1);

// Create a LinearLayout element
LinearLayout ll = new LinearLayout(this);
ll.setOrientation(LinearLayout.VERTICAL);

// Add text
tv = new TextView(this);
tv.setText("my text");
ll.addView(tv);

// Add the LinearLayout element to the ScrollView
sv.addView(ll);

// Display the view
setContentView(R.layout.profile_list);
Run Code Online (Sandbox Code Playgroud)

计划是添加一个TableLayout并动态填充它,而不仅仅是一个虚拟文本,但首先我必须让它工作.

欢迎任何帮助.

亲切的问候Olle

我找到了解决方案!

愚蠢的我在我的XML文件中的ScrollView中留下了一个元素!

无论如何,她是一个有效的例子:

LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View v = inflater.inflate(R.layout.profile_list, null);

    // Find the ScrollView 
    ScrollView sv = (ScrollView) v.findViewById(R.id.scrollView1);

    // Create a LinearLayout element
    LinearLayout ll = …
Run Code Online (Sandbox Code Playgroud)

android android-layout

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

如何实现@RequestMapping自定义属性

作为一个例子,取子域映射.

本文:在Google App Engine上为同一应用程序管理多个域和子域 建议解析Filter上的子域并将变量分配给ServletRequest头.

然后映射将如下所示:

@RequestMapping(value = "/path", headers="subdomain=www")
 public String subsiteIndexPage(Model model,HttpServletRequest request) { ... }
Run Code Online (Sandbox Code Playgroud)

如果我们想创建自定义@RequestMapping属性,例如子域,例如.创建这样的映射:

@RequestMapping(value = "/some/action", subdomain = "www")
public String handlerFunction(){ ... }
Run Code Online (Sandbox Code Playgroud)

我们应该使用我们自己的实现覆盖@RequestMapping @interface定义并覆盖RequestMappingHandlerMapping受保护的方法
(如JIRA所述:" 允许自定义请求映射条件SPR-7812 ").

这样对吗?任何人都可以提供一个提示,如何实现这一功能?


想法1:
正如原始jira线程所建议的,是创建自己的实现RequestCondition

有一个项目在github上使用这个解决方案:https://github.com/rstoyanchev/spring-mvc-31-demo/

和相关的问题:在Spring mvc 3.1中添加自定义RequestCondition

也许像@Subdomain("www")Type和Method 这样的映射是可能的解决方案吗?


链接到forum.springsource.com上的相同问题

java spring servlets spring-mvc

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