├── app
├── .gitignore
├── app-release.apk
├── src
│ ├── main
│ │ ├── res
│ │ │ ├── drawable
│ │ │ │ ├── hololo.png
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── dns_changer_top_bg.png
│ │ │ │ ├── dns_changer_ico_inverse.png
│ │ │ │ ├── divider.xml
│ │ │ │ ├── button_blue.xml
│ │ │ │ ├── button.xml
│ │ │ │ ├── button_red.xml
│ │ │ │ ├── edittext_border.xml
│ │ │ │ ├── ic_vpn_key_black_24dp.xml
│ │ │ │ └── splash.xml
│ │ │ ├── values
│ │ │ │ ├── dimens.xml
│ │ │ │ ├── colors.xml
│ │ │ │ ├── attrs.xml
│ │ │ │ ├── styles.xml
│ │ │ │ └── strings.xml
│ │ │ ├── mipmap-hdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── values-w820dp
│ │ │ │ └── dimens.xml
│ │ │ ├── menu
│ │ │ │ └── menu_main.xml
│ │ │ ├── xml
│ │ │ │ └── preference_layout.xml
│ │ │ ├── layout
│ │ │ │ ├── activity_settings.xml
│ │ │ │ ├── activity_about.xml
│ │ │ │ └── activity_main.xml
│ │ │ └── values-tr
│ │ │ │ └── strings.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── hololo
│ │ │ │ └── app
│ │ │ │ └── dnschanger
│ │ │ │ ├── utils
│ │ │ │ ├── event
│ │ │ │ │ ├── StartEvent.java
│ │ │ │ │ ├── StopEvent.java
│ │ │ │ │ ├── GetServiceInfo.java
│ │ │ │ │ └── ServiceInfo.java
│ │ │ │ ├── RxBus.java
│ │ │ │ ├── MoveUpBehavior.java
│ │ │ │ └── ui
│ │ │ │ │ ├── BehaviorScrollView.java
│ │ │ │ │ └── MaskedEditText.java
│ │ │ │ ├── dnschanger
│ │ │ │ ├── IDNSView.java
│ │ │ │ ├── DNSComponent.java
│ │ │ │ ├── DNSModule.java
│ │ │ │ ├── BootReceiver.java
│ │ │ │ ├── DNSPresenter.java
│ │ │ │ ├── DNSService.java
│ │ │ │ └── MainActivity.java
│ │ │ │ ├── di
│ │ │ │ ├── scope
│ │ │ │ │ └── ActivityScope.java
│ │ │ │ ├── component
│ │ │ │ │ └── ApplicationComponent.java
│ │ │ │ └── module
│ │ │ │ │ └── ApplicationModule.java
│ │ │ │ ├── model
│ │ │ │ ├── DNSModelJSON.java
│ │ │ │ └── DNSModel.java
│ │ │ │ ├── DNSChangerApp.java
│ │ │ │ ├── settings
│ │ │ │ └── SettingsActivity.java
│ │ │ │ └── about
│ │ │ │ └── AboutActivity.java
│ │ ├── AndroidManifest.xml
│ │ └── assets
│ │ │ └── dns_servers.json
│ ├── test
│ │ └── java
│ │ │ └── com
│ │ │ └── hololo
│ │ │ └── app
│ │ │ └── dnschanger
│ │ │ └── ExampleUnitTest.java
│ └── androidTest
│ │ └── java
│ │ └── com
│ │ └── hololo
│ │ └── app
│ │ └── dnschanger
│ │ └── ExampleInstrumentedTest.java
├── signing.properties
├── build.gradle
└── proguard-rules.pro
├── settings.gradle
├── images
├── 1.png
├── 2.png
├── 3.png
└── 4.png
├── .idea
├── copyright
│ └── profiles_settings.xml
├── markdown-navigator
│ └── profiles_settings.xml
├── vcs.xml
├── modules.xml
├── runConfigurations.xml
├── compiler.xml
├── gradle.xml
├── misc.xml
└── markdown-navigator.xml
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── .gitignore
├── gradle.properties
├── LICENSE
├── README.md
├── gradlew.bat
└── gradlew
/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/images/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/images/1.png
--------------------------------------------------------------------------------
/images/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/images/2.png
--------------------------------------------------------------------------------
/images/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/images/3.png
--------------------------------------------------------------------------------
/images/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/images/4.png
--------------------------------------------------------------------------------
/app/app-release.apk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/app/app-release.apk
--------------------------------------------------------------------------------
/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/app/src/main/res/drawable/hololo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/app/src/main/res/drawable/hololo.png
--------------------------------------------------------------------------------
/app/signing.properties:
--------------------------------------------------------------------------------
1 | KEYSTORE_FILE=your/keystorefile/path.jks
2 | KEYSTORE_PASSWORD=pass
3 | KEY_ALIAS=alias
4 | KEY_PASSWORD=key_pass
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/app/src/main/res/drawable/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/.idea/markdown-navigator/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/dns_changer_top_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/app/src/main/res/drawable/dns_changer_top_bg.png
--------------------------------------------------------------------------------
/app/src/main/java/com/hololo/app/dnschanger/utils/event/StartEvent.java:
--------------------------------------------------------------------------------
1 | package com.hololo.app.dnschanger.utils.event;
2 |
3 | public class StartEvent {
4 | }
5 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/dns_changer_ico_inverse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/msayan/star-dns-changer/HEAD/app/src/main/res/drawable/dns_changer_ico_inverse.png
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | .gradle
3 | /local.properties
4 | /.idea/workspace.xml
5 | /.idea/libraries
6 | .DS_Store
7 | /build
8 | /captures
9 | .externalNativeBuild
10 | ./idea
11 |
--------------------------------------------------------------------------------
/app/src/main/java/com/hololo/app/dnschanger/utils/event/StopEvent.java:
--------------------------------------------------------------------------------
1 | package com.hololo.app.dnschanger.utils.event;
2 |
3 | public class StopEvent {
4 |
5 | public StopEvent() {
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/java/com/hololo/app/dnschanger/utils/event/GetServiceInfo.java:
--------------------------------------------------------------------------------
1 | package com.hololo.app.dnschanger.utils.event;
2 |
3 | /**
4 | * Created by android on 23.02.2017.
5 | */
6 |
7 | public class GetServiceInfo {
8 |
9 | }
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/divider.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Mon Dec 28 10:00:20 PST 2015
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
7 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/button_blue.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/button.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/app/src/main/java/com/hololo/app/dnschanger/dnschanger/IDNSView.java:
--------------------------------------------------------------------------------
1 | package com.hololo.app.dnschanger.dnschanger;
2 |
3 | import com.hololo.app.dnschanger.model.DNSModel;
4 |
5 | public interface IDNSView {
6 | void changeStatus(int serviceStatus);
7 |
8 | void setServiceInfo(DNSModel model);
9 | }
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/button_red.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #5ea8cf
4 | #222
5 | #222
6 | #FFF
7 | #c42f27
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/java/com/hololo/app/dnschanger/di/scope/ActivityScope.java:
--------------------------------------------------------------------------------
1 | package com.hololo.app.dnschanger.di.scope;
2 |
3 | import java.lang.annotation.Retention;
4 | import java.lang.annotation.RetentionPolicy;
5 |
6 | import javax.inject.Scope;
7 |
8 | @Scope
9 | @Retention(RetentionPolicy.RUNTIME)
10 | public @interface ActivityScope {
11 | }
12 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/menu_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/edittext_border.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
7 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/xml/preference_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/java/com/hololo/app/dnschanger/utils/event/ServiceInfo.java:
--------------------------------------------------------------------------------
1 | package com.hololo.app.dnschanger.utils.event;
2 |
3 | import com.hololo.app.dnschanger.model.DNSModel;
4 |
5 | public class ServiceInfo {
6 | private DNSModel model;
7 |
8 | public ServiceInfo(DNSModel model) {
9 | this.model = model;
10 | }
11 |
12 | public DNSModel getModel() {
13 | return model;
14 | }
15 |
16 | public void setModel(DNSModel model) {
17 | this.model = model;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/app/src/main/java/com/hololo/app/dnschanger/dnschanger/DNSComponent.java:
--------------------------------------------------------------------------------
1 | package com.hololo.app.dnschanger.dnschanger;
2 |
3 | import com.hololo.app.dnschanger.di.component.ApplicationComponent;
4 | import com.hololo.app.dnschanger.di.scope.ActivityScope;
5 |
6 | import dagger.Component;
7 |
8 | @Component(modules = {DNSModule.class}, dependencies = {ApplicationComponent.class})
9 | @ActivityScope
10 | public interface DNSComponent {
11 |
12 | IDNSView view();
13 |
14 | void inject(MainActivity activity);
15 | }
16 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_vpn_key_black_24dp.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/test/java/com/hololo/app/dnschanger/ExampleUnitTest.java:
--------------------------------------------------------------------------------
1 | package com.hololo.app.dnschanger;
2 |
3 | import org.junit.Test;
4 |
5 | import static org.junit.Assert.*;
6 |
7 | /**
8 | * Example local unit test, which will execute on the development machine (host).
9 | *
10 | * @see Testing documentation
11 | */
12 | public class ExampleUnitTest {
13 | @Test
14 | public void addition_isCorrect() throws Exception {
15 | assertEquals(4, 2 + 2);
16 | }
17 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/hololo/app/dnschanger/dnschanger/DNSModule.java:
--------------------------------------------------------------------------------
1 | package com.hololo.app.dnschanger.dnschanger;
2 |
3 | import com.hololo.app.dnschanger.di.scope.ActivityScope;
4 |
5 | import dagger.Module;
6 | import dagger.Provides;
7 |
8 | @Module
9 | @ActivityScope
10 | public class DNSModule {
11 |
12 | private IDNSView idnsView;
13 |
14 | public DNSModule(IDNSView idnsView) {
15 | this.idnsView = idnsView;
16 | }
17 |
18 | @Provides
19 | @ActivityScope
20 | IDNSView idnsView() {
21 | return idnsView;
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/app/src/main/java/com/hololo/app/dnschanger/model/DNSModelJSON.java:
--------------------------------------------------------------------------------
1 | package com.hololo.app.dnschanger.model;
2 |
3 | import com.google.gson.annotations.Expose;
4 | import com.google.gson.annotations.SerializedName;
5 |
6 | import java.util.List;
7 |
8 | public class DNSModelJSON {
9 |
10 | @SerializedName("modelList")
11 | @Expose
12 | private List modelList;
13 |
14 | public List getModelList() {
15 | return modelList;
16 | }
17 |
18 | public void setModelList(List modelList) {
19 | this.modelList = modelList;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/app/src/main/res/values/attrs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/runConfigurations.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
11 |
12 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/splash.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 | -
5 |
6 |
7 |
8 |
9 | -
10 |
13 |
14 |
15 | -
16 |
19 |
20 |
--------------------------------------------------------------------------------
/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/.idea/gradle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | org.gradle.jvmargs=-Xmx1536m
13 |
14 | # When configured, Gradle will run in incubating parallel mode.
15 | # This option should only be used with decoupled projects. More details, visit
16 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
17 | # org.gradle.parallel=true
18 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
15 |
16 |
17 |
21 |
--------------------------------------------------------------------------------
/app/src/main/java/com/hololo/app/dnschanger/di/component/ApplicationComponent.java:
--------------------------------------------------------------------------------
1 | package com.hololo.app.dnschanger.di.component;
2 |
3 | import android.content.Context;
4 | import android.content.SharedPreferences;
5 |
6 | import com.google.gson.Gson;
7 | import com.hololo.app.dnschanger.DNSChangerApp;
8 | import com.hololo.app.dnschanger.di.module.ApplicationModule;
9 | import com.hololo.app.dnschanger.dnschanger.DNSService;
10 | import com.hololo.app.dnschanger.utils.RxBus;
11 |
12 | import javax.inject.Singleton;
13 |
14 | import dagger.Component;
15 |
16 | @Singleton
17 | @Component(modules = {ApplicationModule.class})
18 | public interface ApplicationComponent {
19 |
20 | DNSChangerApp dnsChangerApp();
21 |
22 | RxBus rxBus();
23 |
24 | Context appContext();
25 |
26 | SharedPreferences pref();
27 |
28 | Gson gson();
29 |
30 | void inject(DNSService service);
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/app/src/main/java/com/hololo/app/dnschanger/utils/RxBus.java:
--------------------------------------------------------------------------------
1 | package com.hololo.app.dnschanger.utils;
2 |
3 | import io.reactivex.Observable;
4 | import io.reactivex.subjects.PublishSubject;
5 |
6 | public class RxBus {
7 | private static RxBus instance;
8 |
9 | private PublishSubject