On which carrier is it running?

im here in the catskills and only AT&t works here,,,,, can i use this phone?

    SamFried It's on all the TracFone carriers (TracFone, Net10, Straight Talk, Total Wireless, etc.). TracFone does have an option to use AT&T towers, but it doesn't work on all phones, but I'm pretty sure it would on this one. [Login to see the link], which is why I assume it works on TracFone AT&T tower. I don't think AT&T sells this.

      Ok, so one of our developers has pulled the framework files and reverse engineered the package manager code.

      Here is the code blocking the install
      try {
      boolean equals = "userdebug".equals(SystemProperties.get("ro.build.type", ""));
      if (!this.mIsEndurance && (!this.mGflip6Gc || !equals)) {
      int i8 = Settings.System.getInt(this.mContext.getContentResolver(), INSTALL_ENABLE, 1);
      this.mIntallSecretCode = i8;
      if (!this.mIsAllowInstall) {
      this.mIsAllowInstall = i8 == 0;
      }
      Log.i(TAG, "mIsAllowInstall= " + this.mIsAllowInstall + ",APK_INSTALL_FINISH" + this.APK_INSTALL_FINISH);
      if (this.APK_INSTALL_FINISH) {
      if (this.mIsMPBranch) {
      packageInstalledInfo.setError(-22, "App forbidden installation " + parsePackage.getPackageName());
      throw new PrepareFailure(-116, "App forbidden installation " + parsePackage.getPackageName());
      } else if (!this.mIsAllowInstall) {
      packageInstalledInfo.setError(-22, "App forbidden installation " + parsePackage.getPackageName());
      throw new PrepareFailure(-116, "App forbidden installation " + parsePackage.getPackageName());
      }
      }
      }

        If you check logcat after installing a package you will see the App forbidden installation message

        To set mIsAllowInstall to true, you can dial the secret code 2880 as seen in the code below which sets the property INSTALL_ENABLE to 0 which in turn sets mIsAllowInstall to true:

        this.mContext.registerReceiver(new BroadcastReceiver() {
        public void onReceive(Context context, Intent intent) {
        if (intent != null) {
        Uri data = intent.getData();
        if (PackageManagerService.this.ALLOW_INSTALL.equals(data)) {
        Settings.System.putInt(PackageManagerService.this.mContext.getContentResolver(), PackageManagerService.INSTALL_ENABLE, 0);
        } else {
        PackageManagerService.this.FORBIDDEN_INSTALL.equals(data);
        }
        }
        }
        }, intentFilter2);

          The problem is the other variable which is checked - this.APK_INSTALL_FINISH this is set to false when the package manager service is initialized with no way to change the value!

          There is another way to prevent the error which would be by preventing the parent if statement from returning true. One variable which is checked is the this.mEndurance variable.

          This variable is set with this line of code: packageManagerService.mIsEndurance = SystemProperties.getBoolean("ro.vendor.tct.endurance", false); So if we can somehow modify the system property ro.vendor.tct.endurance to return true then we can bypass the check and install the package!

          This is where our developer is currently up to, if you have any cool ideas on how to modify this system property without root then by all means let us know!

            • darthLevel 6 - Platinum Elite Member

              Apps4Flip-Admin If you can figure out how to get this phone into download mode than you should be able to root or create custom firmware (kosher?) for the phone.

                darth

                Apps4Flip-Admin if you have any cool ideas on how to modify this system property without root then by all means let us know!

                Apps4Flip-Admin This is way more confusing then תקפה כהן! I'll still try to get through it. But, how do I dial the 2880. Just call 2880? Are there stars and pounds?

                use the hashtag and star pattern from the other commands, but it still won't work because of the second issue I brought up

                  Apps4Flip-Admin Installing APK won't work? Or the code won't work at all? (I didn't see anything when I pressed it).

                  Its a system property and there is no way to see that it changed besides for running adb shell settings get system install_enabled

                  Before running that code it is set to 1 and running the code sets it to zero.

                  This allows the check in the code to pass. Now we just have to get passed the other check!

                  • FlippyLevel 6 - Platinum Elite Member

                    • Edited

                    SamFried Can you provide link to the phone on Amazon.com?

                      SamFried I'm not sure it's true, but if I get a chance to try I'll let you know. It may be true.

                      Does it work on Sprint/T-Mobile?

                        Reifam Most of us will not know because only Tracfone is selling the phone, and it will be locked to their network until you use the phone with their service for 60 days, then the phone can be unlocked for use with other carriers. The phone just came out so we don't have any testimonials yet. Verizon bought Tracfone and Tracfone traditionally had phones that worked across all 3 of the different carriers (although your service would be with Tracfone, it may have used Verizon, T-Mobile or AT&T network), however Tracfone is slowly moving customers onto Verizon-only devices and SIMs that strictly use Verizon's network (my hypothesis is that Tracfone will become Verizon Prepaid one day).
                        For now, if you're looking for a T-Mobile version, check out the TCL Flip Go [Login to see the link] it is nearly identical to this.