From 0d9c06159b58524caad113b043569b9ccbf76cb7 Mon Sep 17 00:00:00 2001 From: Max Lv Date: Fri, 11 Jan 2019 09:44:36 +0800 Subject: [PATCH] First commit --- .gitignore | 11 + .gitmodules | 3 + LICENSE | 622 ++++++++++++++++++ README.md | 56 ++ app/.gitignore | 9 + app/build.gradle | 87 +++ app/proguard-rules.pro | 22 + app/src/clean.bash | 8 + app/src/main/AndroidManifest.xml | 39 ++ .../plugin/v2ray/BinaryProvider.kt | 19 + .../shadowsocks/plugin/v2ray/HelpCallback.kt | 22 + app/src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 5635 bytes app/src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2874 bytes app/src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 7724 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 14444 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 23939 bytes app/src/main/web_hi_res_512.png | Bin 0 -> 92126 bytes app/src/make.bash | 62 ++ app/src/v2ray-plugin | 1 + build.gradle | 30 + detekt.yml | 409 ++++++++++++ gradle.properties | 13 + gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 54708 bytes gradle/wrapper/gradle-wrapper.properties | 6 + gradlew | 172 +++++ gradlew.bat | 84 +++ settings.gradle | 1 + 27 files changed, 1676 insertions(+) create mode 100644 .gitignore create mode 100644 .gitmodules create mode 100644 LICENSE create mode 100644 README.md create mode 100644 app/.gitignore create mode 100644 app/build.gradle create mode 100644 app/proguard-rules.pro create mode 100755 app/src/clean.bash create mode 100644 app/src/main/AndroidManifest.xml create mode 100644 app/src/main/java/com/github/shadowsocks/plugin/v2ray/BinaryProvider.kt create mode 100644 app/src/main/java/com/github/shadowsocks/plugin/v2ray/HelpCallback.kt create mode 100644 app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 app/src/main/web_hi_res_512.png create mode 100755 app/src/make.bash create mode 160000 app/src/v2ray-plugin create mode 100644 build.gradle create mode 100644 detekt.yml create mode 100644 gradle.properties create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100644 gradle/wrapper/gradle-wrapper.properties create mode 100755 gradlew create mode 100644 gradlew.bat create mode 100644 settings.gradle diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..72d1571 --- /dev/null +++ b/.gitignore @@ -0,0 +1,11 @@ +*.iml +.gradle +/.idea +/local.properties +/.idea/libraries +/.idea/modules.xml +/.idea/workspace.xml +.DS_Store +/build +/captures +.externalNativeBuild diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..eaa4661 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "app/src/v2ray-plugin"] + path = app/src/v2ray-plugin + url = https://github.com/madeye/v2ray-plugin diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..e963df8 --- /dev/null +++ b/LICENSE @@ -0,0 +1,622 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + diff --git a/README.md b/README.md new file mode 100644 index 0000000..ea28ea8 --- /dev/null +++ b/README.md @@ -0,0 +1,56 @@ +## v2ray for Android + +[![CircleCI](https://circleci.com/gh/shadowsocks/v2ray-plugin-android.svg?style=svg)](https://circleci.com/gh/shadowsocks/v2ray-plugin-android) +[![API](https://img.shields.io/badge/API-21%2B-brightgreen.svg?style=flat)](https://android-arsenal.com/api?level=21) +[![Releases](https://img.shields.io/github/downloads/shadowsocks/v2ray-plugin-android/total.svg)](https://github.com/shadowsocks/v2ray-plugin-android/releases) +[![Language: Kotlin](https://img.shields.io/github/languages/top/shadowsocks/v2ray-plugin-android.svg)](https://github.com/shadowsocks/v2ray-plugin-android/search?l=kotlin) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/46b34df6fe624ef9a46507126f407880)](https://www.codacy.com/app/shadowsocks/v2ray-plugin-android?utm_source=github.com&utm_medium=referral&utm_content=shadowsocks/v2ray-plugin-android&utm_campaign=Badge_Grade) +[![License](https://img.shields.io/github/license/shadowsocks/v2ray-plugin-android.svg)](https://github.com/shadowsocks/v2ray-plugin-android/blob/master/LICENSE) + +[v2ray](https://github.com/shadowsocks/v2ray) plugin for [shadowsocks-android](https://github.com/shadowsocks/shadowsocks-android). + + + +### PREREQUISITES + +* JDK 1.8 +* Go 1.11+ +* Android SDK + - Android NDK r19+ + +### BUILD + +You can check whether the latest commit builds under UNIX environment by checking CI status. + +* Set environment variable `ANDROID_HOME` to `/path/to/android-sdk` +* (optional) Set environment variable `ANDROID_NDK_HOME` to `/path/to/android-ndk` (default: `$ANDROID_HOME/ndk-bundle`) +* Clone the repo using `git clone --recurse-submodules ` or update submodules using `git submodule update --init --recursive` +* Build it using Android Studio or gradle script + +### TRANSLATE + +This plugin is an official plugin thus you can see [shadowsocks-android](https://github.com/shadowsocks/shadowsocks-android/blob/master/README.md#translate)'s instructions to translate this plugin's UI. + +## OPEN SOURCE LICENSES + +
    +
  • v2ray: MIT
  • +
+ +### LICENSE + +Copyright (C) 2017 by Max Lv <> +Copyright (C) 2017 by Mygod Studio <> + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . diff --git a/app/.gitignore b/app/.gitignore new file mode 100644 index 0000000..6f472d0 --- /dev/null +++ b/app/.gitignore @@ -0,0 +1,9 @@ +/build +/release +# no tests written yet +/src/androidTest +/src/test +/src/bin +/src/pkg +/src/src +/.deps diff --git a/app/build.gradle b/app/build.gradle new file mode 100644 index 0000000..13b64ef --- /dev/null +++ b/app/build.gradle @@ -0,0 +1,87 @@ +import org.apache.tools.ant.taskdefs.condition.Os +import com.android.build.OutputFile + +import java.util.regex.Matcher +import java.util.regex.Pattern + +apply plugin: 'com.android.application' + +apply plugin: 'kotlin-android' + +def getCurrentFlavor() { + String task = getGradle().getStartParameter().getTaskRequests().toString() + Matcher matcher = Pattern.compile("(assemble|generate)\\w*(Release|Debug)").matcher(task) + if (matcher.find()) return matcher.group(2).toLowerCase() else { + println "Warning: No match found for $task" + return "debug" + } +} + +android { + buildToolsVersion "28.0.3" + compileSdkVersion 28 + defaultConfig { + applicationId "com.github.shadowsocks.plugin.v2ray" + minSdkVersion rootProject.minSdkVersion + targetSdkVersion 28 + versionCode 1000000 + versionName "1.0.0" + testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" + } + buildTypes { + release { + minifyEnabled true + shrinkResources true + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } + splits { + abi { + enable true + universalApk true + } + } + sourceSets.main.jniLibs.srcDirs += new File(projectDir, "src/bin") +} + +task goBuild(type: Exec) { + if (Os.isFamily(Os.FAMILY_WINDOWS)) { + println "Warning: Building on Windows is not supported" + } else { + executable "sh" + args "-c", "src/make.bash " + minSdkVersion + } +} + +task goClean(type: Exec) { + if (Os.isFamily(Os.FAMILY_WINDOWS)) { + println "Warning: Building on Windows is not supported" + } else { + executable "sh" + args "-c", "src/clean.bash" + } +} + +tasks.whenTaskAdded { task -> + if ((task.name == 'javaPreCompileDebug' || + task.name == 'javaPreCompileRelease')) { + task.dependsOn(goBuild) + } +} + +dependencies { + implementation fileTree(dir: 'libs', include: ['*.jar']) + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion" + implementation 'com.github.shadowsocks:plugin:1.0.0' + testImplementation 'junit:junit:4.12' + androidTestImplementation 'androidx.test:runner:1.1.1' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1' +} + +ext.abiCodes = ['armeabi-v7a': 1, 'arm64-v8a': 2, x86: 3, x86_64: 4] +if (getCurrentFlavor() == 'release') android.applicationVariants.all { variant -> + variant.outputs.each { output -> + def offset = project.ext.abiCodes.get(output.getFilter(OutputFile.ABI)) + if (offset != null) output.versionCodeOverride = variant.versionCode + offset + } +} diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro new file mode 100644 index 0000000..97f6f95 --- /dev/null +++ b/app/proguard-rules.pro @@ -0,0 +1,22 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +-keepattributes SourceFile,LineNumberTable +-dontobfuscate + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile diff --git a/app/src/clean.bash b/app/src/clean.bash new file mode 100755 index 0000000..0afe174 --- /dev/null +++ b/app/src/clean.bash @@ -0,0 +1,8 @@ +#!/bin/bash + +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +rm -rf $DIR/.deps +rm -rf $DIR/bin + +echo "Successfully clean v2ray" diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..8ed9d0f --- /dev/null +++ b/app/src/main/AndroidManifest.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/java/com/github/shadowsocks/plugin/v2ray/BinaryProvider.kt b/app/src/main/java/com/github/shadowsocks/plugin/v2ray/BinaryProvider.kt new file mode 100644 index 0000000..a21427b --- /dev/null +++ b/app/src/main/java/com/github/shadowsocks/plugin/v2ray/BinaryProvider.kt @@ -0,0 +1,19 @@ +package com.github.shadowsocks.plugin.v2ray + +import android.net.Uri +import android.os.ParcelFileDescriptor +import com.github.shadowsocks.plugin.NativePluginProvider +import com.github.shadowsocks.plugin.PathProvider +import java.io.File +import java.io.FileNotFoundException + +class BinaryProvider : NativePluginProvider() { + override fun populateFiles(provider: PathProvider) { + provider.addPath("v2ray", 0b111101101) + } + override fun getExecutable() = context!!.applicationInfo.nativeLibraryDir + "/libv2ray.so" + override fun openFile(uri: Uri?): ParcelFileDescriptor = when (uri?.path) { + "/v2ray" -> ParcelFileDescriptor.open(File(getExecutable()), ParcelFileDescriptor.MODE_READ_ONLY) + else -> throw FileNotFoundException() + } +} diff --git a/app/src/main/java/com/github/shadowsocks/plugin/v2ray/HelpCallback.kt b/app/src/main/java/com/github/shadowsocks/plugin/v2ray/HelpCallback.kt new file mode 100644 index 0000000..afb33e0 --- /dev/null +++ b/app/src/main/java/com/github/shadowsocks/plugin/v2ray/HelpCallback.kt @@ -0,0 +1,22 @@ +package com.github.shadowsocks.plugin.v2ray + +import com.github.shadowsocks.plugin.PluginOptions + +class HelpCallback : com.github.shadowsocks.plugin.HelpCallback() { + override fun produceHelpMessage(options: PluginOptions): CharSequence = + """ + host=string + Host header for websocket. (default "cloudfront.com") + + mode=string + Transport mode: ws/quic. (default "ws") + + path=string + URL path for websocket. (default "/") + + security=string + Transport security: none/tls. (default "none") + + """.trimIndent() + +} diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.png b/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..94417d1884e4df09bbc8f2b48d06515c0701dc13 GIT binary patch literal 5635 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.png b/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..690be5f296e6b83926675caa438499272c6b75f2 GIT binary patch literal 2874 zcmV-A3&r$_P)NOs`Oae*e9a%s*W7-51K>hOu#^bUb4oey%fO=O7d4*8-D5(-I&S=(Z()7wqa-2T zq2#1$$n^V)`bQs%?X__Xit`@%n`fZ#gDIfL!|xnL_?<5O``UTh>E;EsSH?Byt>|k7 zAVeOOB=X|_Qaz76d#EE@j9?-F%&A*9{S~KkKbK<}D54Ay%Xr(}&HFoU44|-j7V;~b zK!^f`5D-Pd@vXbj{px~7gO~__Cw$GuAreiM zD>=zB(sl#O>-xc>K+Bg_LU^bRa=ix%Q9uk3FYQ9lj!r9By5SQ8&>~_)hOkKfv2R-g z07n!i0uT&e{+FaYnuSK4A{N@IV$i?=K=YsybV2x4D+=GKGXc9RU4YQe-?9d8Hb_*tsH55o%i>Cvm|>5gUpkW1Z2^GsK2lyy;@(*31Us8P!l4 zjT0~LM(=9}OxoCU%9&qU1Z)6m0h~EEfcfj=B%uQ^jj?;i0z{ohes~F(t`V@&jEx=^ zy`Vk4KSYSqXQRAsy9gCtt?r8y8HCsDPp`KMhLpVdRkZBD-`N(swn1aDXfm z^lbYO;hl$c4CDE)DK>#b$aw;==YUPJ4U3e!TcNCOR_WjXpuQ(iG6irQVU%s{0h=f| z>PTT`5b+1+AYbPJQ8W;J9fxhntkXxY4ORqREinSEGy-Qy;w$Q*{PrqUX$%0`vzDYr zG^pxOAg=AbaPJ6%O-UwQh>u15-ezPL)vDhKweQ2Jj>G!rhJ5OxU{dIO0hlGjUTAbm za4eLClR&Ph1Nq)mkV$Se62$;0-{~*%!@nER{TI>-h$^&~rGpauekm=zUN20>^6)eD#kN`H+}0p9j7 zy#I=T&B-e0{0u)ve%*|GgBzjk`!VqP5l1yPWwdkvPiYi#6m6?@G4tS4l!?@MAT6qg zw6GS1%WBnxwNs2ng^lIlYd;0w+k;>v0^;QmyJsd+i)s+w-id)Xy3D*GP$1JnRx*IO zIsn5!jsYZ!h8AuuB6dNtRivWItw8bdD74ief8`|PFRy_V;B^_*REs^GMWFo@{O=8c zkrX7at;5J2mmu`|K}6o{(uGiy(Z{2uQpf;60RES4;BIM#d^!!%8wcqg0|wJj2GhV` z28am`g|TaTu>>nTgF;gf!qxQ<+Nw}!@Tw|A>BUBKsMr#Qe@_hgXwx$&_^^mS469Q0M1KPmph0G?S7!!cu9GEBtlm^?M0UODH9TvdF^Nu!MswzWn zUIo%uRwMVVAh@9%s<#e63UW9Q9Kxyp94#F{WZnC5Zsnz_oXIwQKVJZjNEz3WWfd@T z1+W7daD5qY(JZ(jK{eXdp9L$($WSnCl_&%`c#bD=WTYGS|NDv3B5=At8kZzl<)-Rc zH3HUfViqde)99XeNTzYV%5TNwIknqTBTYihx*==l(f3TM06v-nH!Of35g~aPNJ#{wwZtdxGEpG8ttF0^neHj6nJ3m z#)nG-(D`&n{J-nowt5qXZrZwW)z}G!9;3`!UAJ`}J)IgEbfauqC0zC8;A*L{e(?1H za1B9_yo~JO0SL!VL&+7uH&sKfapU&i-&Y!dk=U8|iRa(Li4E^+Q5Y}!&Mwt9k2BO% z1z>mn5XC%J{Op$V z13*2~`@$~tZS90-N)`MwYT=z$g|hl`xF?sxJ*5JSn>S_DsXA8D8@-S$O2~XXh}8Zt zvPT9WouTu&7G8d81%fxXzih}~z9*su@oYa8LYwo!F}D2ksAfT|3-LQn&(nqVl9 zRR<;lkRQz;-8F#Z-dCI_$lQm|8WaE-@XX6=SjbH9O?Ft;9K6J0x+cf z^8wITBc%YKQnG-{Z@9IXfGYqkRY~1e0FrKUSp-T~#()_FD z!*gAeUVAi7hyEk~iq1pd`+@Ti`r_tgg>U8&BWLK6Tm)Fg2*jFXS-Pz#Jf=%UrA35M!@ z<;|@KEN<2lUaPipQo!gldm$W(sCB`A+kAKy&vI3xEuROr!tH4Os3)a(4x{UKL!^|^AHF-=;8{ZVN_s1PAplV067QXaw`DTe zD&K@#iQLCgj6U%JNGxL-?_aY3WlLtM5~?Qj7aD<)SX`22RfFv+>CKf zqmqo|wvUk5bOeyC4S{d%0(h3r(xP+@07i5KLBPsVd!gZxSe*7k>W0lGX`c>2=dC`O zspI0AEYAGteTau6R-!Y2@2&;#+%Q{T@|FgG7DozT)ry~%)C-mOM+WCR4TFdj@6B&tk?a!ckkJ7 z$@J;B85*zh)3G{qzAv7MlUurweEy(qaG;)F2+xhp8YOi_vh&_5n${FYKbIv5VqQcj z6x#gA!w=mHAZfqwM8DARjg5`dpLp`gN2g7lx|C(vfHC@=Z6;QC$R<#NO#3lpwjBc) z2Hq8|C|lBG+nw5$06G}0M%YGFg+L|>@}iKAMx$>%z5c1+#A2}!fc&`t(9b;pY5-IM za9!Y^S?MA*p;M=%Un$MLi?-`#+zjo_UtnWfHkKuOG?Ham$7n`#b@$f$kM6&FdZe)#*--J6r(}($ zd;WgkJHPk-9u3DI$5aB^G5z%8ACBVy9AhOo4#05$jm|8XpUj#Zz>_)?C^$D86)>8E@i)oFK6U;w5m*CUqWSPK1(K2E$xd8_knuJ_45%ENp>{wtGFSUN_W%4BD3eRC_?R&BS} zV4a`;$MtK`0@bDS1Dp%wt1_*Z*|pL?!$`u1_f5_B_^Yj3A6dR;dB*GNOQCW&0Qla$ z`QhnPf+L^OJNxGw$sEjV0cK7I1AyW0lB(lZE+|dBwFnzkOm1-G?|u!rE2ks>#fe;? z?DP0}4c)-*XV;?j@9(=5p%`gQAaxgOmn0Z40AXYDfmOb#_T?cu9 zng7b$yYg*%sivK8N*sn2ZxNE;fxhU=2Ra$CaQ^ zAP{zL%kBT{W7}WppqGXMp+*2``h*pf^hD(V5CSlw<;({<$>);`Le40y z`9~yt%_9g%dUxd7C)oc`Mm1^@+L^8KD}rbPNVsOu3YD$_k# z+BPzRfghda@$&yd|2@}dgJ4;nX+VdG zJL6AJ1aJtzz{dq344`iB;``do99cjfnnA&)gjG3wdI`;TfH#!;k#5DVBCM<_=tK6> zDac+k0|rGZ7YMdH($VzfDm1^aQ3&g!CORmk{h>3Evq#y-rW>C@g3|`i{BK8^cyIU|E1nRSg3>pIn8#1cImk z_lnfg(7m!ZHTc>VL@r2Jz%T%iEx<^Z0N{u;-?k9brvX)dXsLoL6SRH5Qb!k+wnlvz z>3^S#-24V5JF)|`j0-!TSc%q`RClBZxhVJ!mSQ{I4-fJthSvhT04Oqsax`DLQd+oQ zgYoS-Fg`yK+KS!qKf4E7x?s6ZJ4KY{Um|<*YZ$n63I?v84l}^Rn-siNuoZMPEnAJ2 z7dKg!zzxFN|I5_Y;cyiTQV*pZNN1T4ivbn3fQ5<+lGKB9Rookv3J!w+rQb3K#^p0u zRmogOM+&~@_Q3!29w4KasF-AgGmc z;tUmI4I%X3HXFGmBW)14NwDIK3b$QPu14#Nn+72fMP=Y#zY>7eY>*OA%ETxR+}ZX_ zr7hq$2{Wt1APT}kGY#T$JX2MnIpp(ip35|!(FpQ1l3-(kVr(POIe@?)K15)3JCGsQ zGzhDz#v)Ba>axj5UpW)3LT>l6)o6Wba|ssJtHO6@PqsVcF@UGTceYjB z1xWzZAbe!PXIA~4Q(=-0qpkYREnNli@qPu zfj%?M9F+!krR3vN3y^dR+*8x1NOTl19q{xFv8R?;`?%1!g-d z8jPiNe+=WJ7$?Om;mW(91;0rcxdP0=>Hv>4&Y`A$A9FkAm9qqKCg^10Ze-TNGY`pl zig@7hn(w1tgdf@o|CTOjM2nXYzM3oaUp5*2mra5Z@(D&&FsUX7VgJipM8#~oMeBHX z_G9TG|6mRP=Yxg?fWd>XJ4N(BQyvfip&mBtQt(FtO(;iV2%b`hPF?V_U#*xuE&N1-Sw6OfiSZQW_#K&z}JE^sz8! z*1@a|IkKQ50zd&Xu&IQadOppPQnk@p!WnC^LM4fenKK0kH{|Ie|r z>FCPG02Kg7=3(i?;FWMuNZ`k*yIg3=gm}oO$PKrVQ%vk92M#4C`4rX=0&Rn>(l{&%($n$l>MC6SG zs-J5`U{AkeF5jXfd_dp7j6=^AlVDWYF{*j_TEt)3!YtoeW;m~Xm;tyaVPtjQjAxaw zqDcyzFPc+IHH;W^wUP8aP|o(kjsh%1@$CApdN+QBX;(Rtzb_! zm(vk`s~yq5v>?znz%IkV1yKuYMhu;|&qRI7C-=q zI-pb)>Q?;{!j~C}>b#1xmeQ6*!q;ciqOhP5`SZuaXdpq^E~uy%pp37`Q5K}~h`iH@ z*b~k0ce#casO>o-fUX;-p?_&3?#mD9o-$e(^{YPHjZ~#265u*kX6cR12_XiDdCNP(bvhIHE7LA#i|(+MJJ`FONm{ zm9lU%v3L2qh`;)Q9h4PEFuWE(0FRaPF16L{oq2dSSIWqw9Dq0jD$7J_ zL&#ik0`jMgLSb?Zj3~todw|OgfSf5pR!8iaeW-aQ0e?4Hgm{=hc4{>`?wEnx7*1~! z2yL%zX8jJ71qcoN3mUYJciFq;ms=87v< zDq;mMhuxVMrQcGCyol2 z;zf4`W}+WvTMA}d5{UORuAe;6Et77o*zGvHw$Rv8Y%NbCO%x_Ykv?Y(GN;rcKP3u-Dq#<+@bzR-w|qZp zRvol}$V{z9;@0WNj*Bo5+F#$sXl>RH5Nv400oZ%05(7*ibo(L%zkUh~%}Jz{1Aye? zxhzT)SlI$VuB$f-ZGS(sct5n3Bz$|5@a<3W#!TLXrVax;0<_y|6t}Lv&!<6e2q814 z7U|E7Lgu6q3=FEqt+g2@0$o|u{xy!;H#(u^4Cqlm+OMC4-qY&Q`s{kNzqXBKVzMP! zaR8c6y_C=8lFJfP#VGx921Hwb@o0MgYi^PZmPOEa#B{FeDe`vLFc* z^^eI)eEX6N6s>&#{*D3oy0R?8(FTN1cO_kF<|AF$!0Zu7Ew0DFDYeLsuYyT&93}$s z0W>}nN9^5hWG6%rzj-ott=opSSKntKRNeyS-;)U4I1hmfWroW0V1dN#H2LqI|}P5n5+`kdb04h^dr!kLSSDSf&FRtJ2UWQbs%eax-}Af zp&^Xq8TCk>(a69sf*Jye0gV3hK2+~WqV1Xq*b;9-;;j#HSEZZsZTGE81TQ;@5l)f_ zW3K0uWC4mr@c2St$R4mDHQ87t4+0!u%H3(aPG^}9J^h_oW-)>G0fhFY5!^R`Krht> zb|R2(3?n@=isZsN^e?PKD4s_B-`bH47+6=8zz_cN^U7vHU0sI~jBb?|U==sK5-HyT zC{?p<-!ll8*^+bzah{DiIU#i)0dtW>0NC+GcGxUe$~Jv)i}Lm78FxgW1Us_`9LOR- zKM&>*=r15eV9bdjuNlCh48HK#ZIuNezNu6;oUW0V5 zRI>PZHS4!|0J~q}s?L=2@fyHUHFz}gi?(UVDogwn?#t?onef+DAuzEP{t30LyO-V9 zjT;~R@5%!3#2G(I=$Sn7>8u!TBI&s0UWA8!5|j ziaA+Fn9#xj1V+}tKPn1;V>Nt@)$lh|!#^?#-^gm#C(nM^j_l4(=rogBAI1%T_|M7$ zu;KSFC$``JI`YX3qh?D#%H(wH>nq~p9p^3r*$$vyyGwY7jqj-OK2PzUHrimPRfpiK z2_aBhg}~?<_6&}%MPOnb6SfT8Ea@m1$hRkv+i?H`Yxg1F+=bxGk*K~Eu@1p;wFr)hG0oN@L1+;_?eDU)B$*6QtkVtT_8vm|oxR9>&#>#CdGBk&nJPNyQv9M)l*xqi^fVSE zHP!9MioJ(8vGNDci8a9sYXKiZV`2!79f8o;5nPi;#SmzyMxZguw47@*1!9fww$ym4 zsb3-ZckMxePVajET7-E;qMR4vIHdJQx450VH^~mo$h?;BXBeZlPv!bH|fM`_jeS9^V?)&@T z@tFP9?a=Kud}LfLswOoeGO?byity+df{jrG>#N}(Q6;ol242^^XsM})B9>J>p8NCk zmN-%y_9L_70P<};JfHUnNr7=OM87&4kwxSAG#`yNZf!^3!y91qW)Qu00m5faV(FN! z8%GZS$*(j&wi>(dd&4Fl6+WKC?5~L+OfF(n3=wh@V`~u}SBI+cb?hh8V%eWn-GSmF zB!G4SWz!){w_W@bgWUC6;ZO?c4?B?Fv>&OB`#|@*5W&b&5jD01#>PI#f+=M0DyXM5m8J zU_=$Wj{-;FQ&zIyindhUN0`5m2rUqj9HiOiM-c#(f-WNv7W-sxP|5+o&`snICXwFJfxfkSk$k5a2GeqdUKn&zkH61X8$r!E z(-FI54iNTR6uSgK?@FQP{yguyzqdfFpWyvuF@7j zSqllh=glVct!rWBzD`@E6n?&xhC5$3p+y3SeR(!&E|>vdU6o@HS2pD{o8svG!#Wr} zVo*!?{P1Tc!xTMmE9JFZ+0k@CsEFhnnjbB68LgLA@8J!bjZ& z$tH)@>Qnf5XE8)VFSQ-X9Rp0{yVFSRB-hf6p0{_S&__2KVGh8xDZ*7-48j|c#z#Lh z1+`bqgTKDIU%Lxe$?ark1q!W9EW*@?6>lS?nQkER^+$ zP8A1_y}&ES-ZXmF?7^Won~>Vk0X>y<-qPKZW3pwWT7*hxXh9!p&Yp(4%jdyAN(^C% zj+mO#(t5I+;^=u`Ei0_72f3YZE#^g**vG(>%cX2b9{^pq+K)q8fXB!H+zVFG+NWa?T=5Pa3VacH=9F@lro97f}&BiQeTiOj}0y6<0OXE`#`5QsM{Lgefz zj>))BEdX>~jAs{H_$jj?5aJK4EOt2#s=7FlmlmNO7+pMx`S|dx(aPkUjS#EQ<-H+D z_<0?Df7+uD>(yz!{N zVm_+oj8oZP=1XhpD3B+-5EJFJaZ6kAC6oWkIEg zHxj^sr#7ICKww2(ad(%F)#UwySSG3=GIJCfuUi6gITjZ+2ph^QP}h;!*oH&DUd8vf zNqptcfQFizmLPo26wm2sNydFDgYaO?CrxK{uGoaO`&ZeWHSb)A34Y`^mLM|s1e+SR zhIYN_Xi^TNprhx(^+>(4i%)V0p<8eVe5kp32|{O2=AY~_o?b2ha%gQB8#0x%0E?g_ z5SDF3`va@3a!YOOM`n#i{bln|b0%@}lFlxJjs}pA_oDl5;c_Ifs&^w|?IvW zpKt&UB{=Q;@m-LcAw9TkBRYP!#8dvlp0u2KL@3x}*o_F}I zbzDU=^JXM`3b@4i3$w84bph~U#(-mB0b+xiM|J2-|F{GOeN8vewR|(WpWlj+*DYZc zEcJ!eZkKfqWhaiiAw##*>3w)T<8rKRPwtpbZs(>Y2%R^DvznhC01hSCU@pyu$`O$v zsE9#hfEyILKSRM_ElL|O#oY{H0r~ws==$YK(LIA1=s+vJM{_oV}mM-I!CWzAdjAh)}#NWoyr|t zJn9H)rhMl#gg-k~VMA?S|8Xrq(i5aClm+GUd0cb#6_uTg>pVzVkaK^4Y5`I+9rO4_ z{o%oz@>~$kJ!hpXfW`z5k;~bA&@<3l20#J#*3(6irKYTv2SC?#Yb<5>0brXK#Povf z3MuU8Pz`u@V3rzQ%KuvyV3!eqgyi37_1~1(fY5^tmhFuZ#uo zju>e_J+Hmys)|}bUA(PrZ!j2&s5@ka&jQHOxKz0Xh{=mo4!sX=K>zdGm9Ho9uHG0s z`W@l(Wv=6x6{@TSunpR}&V)aZ$@JgwjjzwH)ZNqR3mob`+_B@8#)iiE(hXTXVbP$F z!cse8gKft1N=? zPyRoLLtR~)zjxbrzgns94+sLNefHVsestRDr~Oa{K~~TR*3fnz&hK_{wkMq%vJV%4 zW11N|Z9QAZDSo^Ij+67m&;4uyyMPzqsq?Kl@ds zzCnY1hs^BRv&TR5(8JG-8$W&;BgzydwD_%}EviQ{n8gb>_r`B}ExBSVk`Jyg?S7cg zKMmo}Pglq~HMJ~l1%pF}26`%u(VO1b&Y;2qbQct6fi zKHcIiZ}kL%1c0bl8e}3MXw0Lc-z6!R!$$talfa<=(`)~%0Pu`~3!AJ!{`BBOO4KXm z0bTSiRp|fB0H_U4-pfDC$3L^?9;T><=k3P<7#_Kneb(aulr5^^dE;>ahDWYtpY=EZ mWs7Qf-gq2<;gM_EXZ?RBDVJaP%O=hM0000ab literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..cc2b0c411cd0a292e2fdcb942ed1fa606a60dc0f GIT binary patch literal 14444 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 S~F=&Cg`d2 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 literal 0 HcmV?d00001 diff --git a/app/src/make.bash b/app/src/make.bash new file mode 100755 index 0000000..f654a68 --- /dev/null +++ b/app/src/make.bash @@ -0,0 +1,62 @@ +#!/bin/bash + +function try () { +"$@" || exit -1 +} + +[ -z "$ANDROID_NDK_HOME" ] && ANDROID_NDK_HOME=$ANDROID_HOME/ndk-bundle +TOOLCHAIN=$(find $ANDROID_NDK_HOME/toolchains/llvm/prebuilt/* -maxdepth 1 -type d -print -quit)/bin + +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +MIN_API=$1 +TARGET=$DIR/bin + +try mkdir -p $TARGET/armeabi-v7a $TARGET/x86 $TARGET/arm64-v8a $TARGET/x86_64 + +export GOPATH=$DIR + +pushd $DIR/v2ray-plugin + +if [ ! -f "$TARGET/armeabi-v7a/libv2ray.so" ] || [ ! -f "$TARGET/arm64-v8a/libv2ray.so" ] || + [ ! -f "$TARGET/x86/libv2ray.so" ] || [ ! -f "$TARGET/x86_64/libv2ray.so" ]; then + + echo "Get dependences for v2ray" + go get -v + + echo "Cross compile v2ray for arm" + if [ ! -f "$TARGET/armeabi-v7a/libv2ray.so" ]; then + try env CGO_ENABLED=1 CC=$TOOLCHAIN/armv7a-linux-androideabi${MIN_API}-clang GOOS=android GOARCH=arm GOARM=7 \ + go build -ldflags="-s -w" -o client + try $TOOLCHAIN/arm-linux-androideabi-strip client + try mv client $TARGET/armeabi-v7a/libv2ray.so + fi + + echo "Cross compile v2ray for arm64" + if [ ! -f "$TARGET/arm64-v8a/libv2ray.so" ]; then + try env CGO_ENABLED=1 CC=$TOOLCHAIN/aarch64-linux-android${MIN_API}-clang GOOS=android GOARCH=arm64 \ + go build -ldflags="-s -w" -o client + try $TOOLCHAIN/aarch64-linux-android-strip client + try mv client $TARGET/arm64-v8a/libv2ray.so + fi + + echo "Cross compile v2ray for 386" + if [ ! -f "$TARGET/x86/libv2ray.so" ]; then + try env CGO_ENABLED=1 CC=$TOOLCHAIN/i686-linux-android${MIN_API}-clang GOOS=android GOARCH=386 \ + go build -ldflags="-s -w" -o client + try $TOOLCHAIN/i686-linux-android-strip client + try mv client $TARGET/x86/libv2ray.so + fi + + echo "Cross compile v2ray for amd64" + if [ ! -f "$TARGET/x86_64/libv2ray.so" ]; then + try env CGO_ENABLED=1 CC=$TOOLCHAIN/x86_64-linux-android${MIN_API}-clang GOOS=android GOARCH=amd64 \ + go build -ldflags="-s -w" -o client + try $TOOLCHAIN/x86_64-linux-android-strip client + try mv client $TARGET/x86_64/libv2ray.so + fi + + popd + +fi + +echo "Successfully build v2ray" diff --git a/app/src/v2ray-plugin b/app/src/v2ray-plugin new file mode 160000 index 0000000..8419334 --- /dev/null +++ b/app/src/v2ray-plugin @@ -0,0 +1 @@ +Subproject commit 8419334beb2d219828d0f147d22816627a9af57f diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..e00df37 --- /dev/null +++ b/build.gradle @@ -0,0 +1,30 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + +apply plugin: 'com.github.ben-manes.versions' + +buildscript { + ext { + kotlinVersion = '1.3.11' + minSdkVersion = 21 + } + repositories { + google() + jcenter() + } + dependencies { + classpath 'com.android.tools.build:gradle:3.2.1' + classpath 'com.github.ben-manes:gradle-versions-plugin:0.20.0' + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion" + } +} + +allprojects { + repositories { + google() + jcenter() + } +} + +task clean(type: Delete) { + delete rootProject.buildDir +} diff --git a/detekt.yml b/detekt.yml new file mode 100644 index 0000000..da4088d --- /dev/null +++ b/detekt.yml @@ -0,0 +1,409 @@ +# https://github.com/arturbosch/detekt/blob/RC9.2/detekt-cli/src/main/resources/default-detekt-config.yml +autoCorrect: true + +comments: + active: false + +complexity: + active: true + ComplexCondition: + active: true + threshold: 4 + ComplexInterface: + active: true + threshold: 10 + includeStaticDeclarations: false + ComplexMethod: + active: true + threshold: 10 + ignoreSingleWhenExpression: false + LabeledExpression: + active: false + LargeClass: + active: true + threshold: 150 + LongMethod: + active: true + threshold: 20 + LongParameterList: + active: true + threshold: 6 + ignoreDefaultParameters: true + MethodOverloading: + active: false + NestedBlockDepth: + active: true + threshold: 4 + StringLiteralDuplication: + active: true + threshold: 3 + ignoreAnnotation: true + excludeStringsWithLessThan5Characters: true + ignoreStringsRegex: '$^' + TooManyFunctions: + active: true + thresholdInFiles: 11 + thresholdInClasses: 11 + thresholdInInterfaces: 11 + thresholdInObjects: 11 + thresholdInEnums: 11 + ignoreDeprecated: true + ignorePrivate: false + +empty-blocks: + active: true + EmptyCatchBlock: + active: true + allowedExceptionNameRegex: "^(_|(ignore|expected).*)" + EmptyClassBlock: + active: true + EmptyDefaultConstructor: + active: true + EmptyDoWhileBlock: + active: true + EmptyElseBlock: + active: true + EmptyFinallyBlock: + active: true + EmptyForBlock: + active: true + EmptyFunctionBlock: + active: true + ignoreOverriddenFunctions: false + EmptyIfBlock: + active: true + EmptyInitBlock: + active: true + EmptyKtFile: + active: true + EmptySecondaryConstructor: + active: true + EmptyWhenBlock: + active: true + EmptyWhileBlock: + active: true + +exceptions: + active: true + ExceptionRaisedInUnexpectedLocation: + active: true + methodNames: 'toString,hashCode,equals,finalize' + InstanceOfCheckForException: + active: true + NotImplementedDeclaration: + active: true + PrintStackTrace: + active: false + RethrowCaughtException: + active: false + ReturnFromFinally: + active: true + SwallowedException: + active: true + ThrowingExceptionFromFinally: + active: false + ThrowingExceptionInMain: + active: true + ThrowingExceptionsWithoutMessageOrCause: + active: true + exceptions: 'IllegalArgumentException,IllegalStateException,IOException' + ThrowingNewInstanceOfSameException: + active: true + TooGenericExceptionCaught: + active: true + exceptionNames: + - ArrayIndexOutOfBoundsException + - Error + - Exception + - IllegalMonitorStateException + - NullPointerException + - IndexOutOfBoundsException + - RuntimeException + - Throwable + allowedExceptionNameRegex: "^(_|(ignore|expected).*)" + TooGenericExceptionThrown: + active: true + exceptionNames: + - Error + - Exception + - Throwable + - RuntimeException + +formatting: + active: true + android: true + autoCorrect: true + ChainWrapping: + active: true + autoCorrect: true + CommentSpacing: + active: false + Filename: + active: true + FinalNewline: + active: true + autoCorrect: true + ImportOrdering: + active: false + Indentation: + active: true + autoCorrect: true + indentSize: 4 + continuationIndentSize: 4 + MaximumLineLength: + active: false + ModifierOrdering: + active: true + autoCorrect: true + NoBlankLineBeforeRbrace: + active: true + autoCorrect: true + NoConsecutiveBlankLines: + active: true + autoCorrect: true + NoEmptyClassBody: + active: true + autoCorrect: true + NoItParamInMultilineLambda: + active: true + NoLineBreakAfterElse: + active: true + autoCorrect: true + NoLineBreakBeforeAssignment: + active: true + autoCorrect: true + NoMultipleSpaces: + active: false + NoSemicolons: + active: true + autoCorrect: true + NoTrailingSpaces: + active: true + autoCorrect: true + NoUnitReturn: + active: true + autoCorrect: true + NoUnusedImports: + active: true + autoCorrect: true + NoWildcardImports: + active: false + ParameterListWrapping: + active: false + SpacingAroundColon: + active: true + autoCorrect: true + SpacingAroundComma: + active: true + autoCorrect: true + SpacingAroundCurly: + active: true + autoCorrect: true + SpacingAroundKeyword: + active: true + autoCorrect: true + SpacingAroundOperators: + active: true + autoCorrect: true + SpacingAroundRangeOperator: + active: true + autoCorrect: true + StringTemplate: + active: true + autoCorrect: true + +naming: + active: true + ClassNaming: + active: true + classPattern: '[A-Z$][a-zA-Z0-9$]*' + ConstructorParameterNaming: + active: true + parameterPattern: '[a-z][A-Za-z0-9]*' + privateParameterPattern: '[a-z][A-Za-z0-9]*' + excludeClassPattern: '$^' + EnumNaming: + active: true + enumEntryPattern: '^[A-Z][_a-zA-Z0-9]*' + ForbiddenClassName: + active: true + forbiddenName: '' + FunctionMaxLength: + active: true + maximumFunctionNameLength: 30 + FunctionMinLength: + active: true + minimumFunctionNameLength: 3 + FunctionNaming: + active: true + functionPattern: '^([a-z$][a-zA-Z$0-9]*)|(`.*`)$' + excludeClassPattern: '$^' + ignoreOverridden: true + FunctionParameterNaming: + active: true + parameterPattern: '[a-z][A-Za-z0-9]*' + excludeClassPattern: '$^' + MatchingDeclarationName: + active: true + MemberNameEqualsClassName: + active: false + ObjectPropertyNaming: + active: true + constantPattern: '[A-Za-z][_A-Za-z0-9]*' + propertyPattern: '[A-Za-z][_A-Za-z0-9]*' + privatePropertyPattern: '(_)?[A-Za-z][A-Za-z0-9]*' + PackageNaming: + active: true + packagePattern: '^[a-z]+(\.[a-z][a-z0-9]*)*$' + TopLevelPropertyNaming: + active: true + constantPattern: '[A-Z][_A-Z0-9]*' + propertyPattern: '[A-Za-z][_A-Za-z0-9]*' + privatePropertyPattern: '(_)?[A-Za-z][A-Za-z0-9]*' + VariableMaxLength: + active: true + maximumVariableNameLength: 64 + VariableMinLength: + active: false + VariableNaming: + active: true + variablePattern: '[a-z][A-Za-z0-9]*' + privateVariablePattern: '(_)?[a-z][A-Za-z0-9]*' + excludeClassPattern: '$^' + ignoreOverridden: true + +performance: + active: true + ForEachOnRange: + active: true + SpreadOperator: + active: true + UnnecessaryTemporaryInstantiation: + active: true + +potential-bugs: + active: true + DuplicateCaseInWhenExpression: + active: true + EqualsAlwaysReturnsTrueOrFalse: + active: true + EqualsWithHashCodeExist: + active: true + ExplicitGarbageCollectionCall: + active: true + InvalidRange: + active: true + IteratorHasNextCallsNextMethod: + active: true + IteratorNotThrowingNoSuchElementException: + active: true + LateinitUsage: + active: false + UnconditionalJumpStatementInLoop: + active: true + UnreachableCode: + active: true + UnsafeCallOnNullableType: + active: false + UnsafeCast: + active: false + UselessPostfixExpression: + active: true + WrongEqualsTypeParameter: + active: true + +style: + active: true + CollapsibleIfStatements: + active: true + DataClassContainsFunctions: + active: false + EqualsNullCall: + active: true + ExpressionBodySyntax: + active: true + includeLineWrapping: false + ForbiddenComment: + active: true + values: 'TODO:,FIXME:,STOPSHIP:' + ForbiddenImport: + active: true + imports: '' + ForbiddenVoid: + active: true + FunctionOnlyReturningConstant: + active: true + ignoreOverridableFunction: true + excludedFunctions: 'describeContents' + LoopWithTooManyJumpStatements: + active: true + maxJumpCount: 1 + MagicNumber: + active: false + MandatoryBracesIfStatements: + active: false + MaxLineLength: + active: true + maxLineLength: 120 + excludePackageStatements: true + excludeImportStatements: true + excludeCommentStatements: true + MayBeConst: + active: true + ModifierOrder: + active: true + NestedClassesVisibility: + active: true + NewLineAtEndOfFile: + active: true + NoTabs: + active: true + OptionalAbstractKeyword: + active: true + OptionalUnit: + active: true + OptionalWhenBraces: + active: true + PreferToOverPairSyntax: + active: false + ProtectedMemberInFinalClass: + active: true + RedundantVisibilityModifierRule: + active: true + ReturnCount: + active: false + SafeCast: + active: true + SerialVersionUIDInSerializableClass: + active: true + SpacingBetweenPackageAndImports: + active: true + ThrowsCount: + active: true + max: 2 + TrailingWhitespace: + active: true + UnnecessaryAbstractClass: + active: true + excludeAnnotatedClasses: "dagger.Module" + UnnecessaryInheritance: + active: true + UnnecessaryLet: + active: true + UnnecessaryParentheses: + active: true + UntilInsteadOfRangeTo: + active: true + UnusedImports: + active: true + UnusedPrivateMember: + active: true + allowedNames: "(_|ignored|expected|serialVersionUID)" + UseDataClass: + active: false + UtilityClassWithPublicConstructor: + active: true + VarCouldBeVal: + active: false + WildcardImport: + active: false diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..743d692 --- /dev/null +++ b/gradle.properties @@ -0,0 +1,13 @@ +# Project-wide Gradle settings. +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +org.gradle.jvmargs=-Xmx1536m +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..7a3265ee94c0ab25cf079ac8ccdf87f41d455d42 GIT binary patch literal 54708 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

_x$+l{{cH8$W#CT literal 0 HcmV?d00001 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..3a9cf05 --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Mon Apr 09 22:29:00 PDT 2018 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-5.0-all.zip diff --git a/gradlew b/gradlew new file mode 100755 index 0000000..cccdd3d --- /dev/null +++ b/gradlew @@ -0,0 +1,172 @@ +#!/usr/bin/env sh + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..f955316 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,84 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 0000000..e7b4def --- /dev/null +++ b/settings.gradle @@ -0,0 +1 @@ +include ':app'