Android:パッケージングツールによるパッケージングを防止する方法

1539 ワード

需要ソース
会社の仕事の过程の中で、时にはリーダーは竞争相手のAPKを持って私にかばんをつかんで、他の人のインタフェースの要求と结果を见て、それからこれらのデータが会社の后期の制品の开発の中で役に立つかどうかを分析します.もしうちの会社にこのような考えがあれば、うちの会社のライバルにもこのような考えがあるに違いありません.では、他の人がうちの会社のAPKを持ってバッグを捕まえるのを避けるにはどうすればいいですか.次は自分の考えを話します.
げんりぶんせき
普段はAndroidアプリをFiddlerでパッケージングしていますが、Fiddlerに詳しくない場合は、クリックしてFiddlerパッケージング方法を見ることができます.つかむ前に、携帯電話のWiFiをエージェント設定してから、パソコンでFiddlerを使ってパケットを成功させる必要があるので、アプリでネットワークを要求する前に、携帯電話のネットワークがエージェントを使っているかどうかを判断し、エージェントを使っている場合はインタフェースを要求しないことを考えてみましょう.新しい問題が来て、Android携帯電話の中でどのように携帯電話のネットが代理店を使ったかを知っていますか?
コード実践
資料の検索と実践を経て、次のコードが需要を満たすことが分かった.
private boolean isWifiProxy() {
    final boolean IS_ICS_OR_LATER = Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH;
    String proxyAddress;
    int proxyPort;
    if (IS_ICS_OR_LATER) {
       proxyAddress = System.getProperty("http.proxyHost");
       String portStr = System.getProperty("http.proxyPort");
       proxyPort = Integer.parseInt((portStr != null ? portStr : "-1"));
    } else {
       proxyAddress = android.net.Proxy.getHost(this);
       proxyPort = android.net.Proxy.getPort(this);
    }
    return (!TextUtils.isEmpty(proxyAddress)) && (proxyPort != -1);
  }


足りないところ
ここでエージェントを使用していると判断すれば、リクエストインタフェースを停止するのも不足しています.例えば、ユーザーが海外のエージェントを使用している場合、彼女がこのエージェントを使用しているのは海外のウェブサイトにアクセスするためで、非常に合理的です.彼女のためにエージェントを加入しなければならないので、私たちのアプリを使用できないので、ユーザーの体験が悪いです.
まとめ
このまとめはよくないですね.会社はユーザー体験を考慮して、最終的にこの方法を使っていないので、研究的な方法にすぎません.後期に使用した場合は、このまとめを補足します.