URL and Link repository

Tuesday, July 17, 2018

Root Lenovo Yoga Book YB1-X90F

One must first downgrade the Android OS to Nougat following the instructions here.
Be patient between steps as there is a slight lag between screen prompts.
  • After downgrading to Nougat through Intel Platform Flash Tool Lite., enable Developer Options by tapping Settings | About | Build Number until Developer options is confirmed.
  • Under Developer Options turn on OEM Unlocking and USB Debugging while turning off Automatic System Updates.
  • Connect Yoga Book to PC with ADB and Fastboot already installed and the environment variables set so that one can open a command line and issue ADB and Fastboot commands.
  • Open the Windows Command Prompt and type "adb devices".
  • If the Yoga Book is listed, then type "adb reboot-bootloader". If the Yoga Book is not listed, you must figure that out on your own.
  • Once the device is showing the boot loader, type in the command prompt "fastboot flashing unlock"
  • When you reboot, you will encounter the set up process again. Complete the set up and enable Developer Options again with USB debugging.
  • Now you must download TWRP Recovery image to the same directory as Fastboot.
  • Download all the necessary root files from here aka MMRoot.
  • With the Yoga Book connected to the PC, copy the MMRoot files from the PC to the Downloads directory on the Yoga Book.
  • Open a Windows command line and type "adb reboot-bootloader", then "fastboot boot recovery_twrp.img".
  • Use the TWRP menu to Install 1-Magisk-v7.zip
  • Then Install 2-phh-superuser-magisk-r259.zip
  • Links that helped compile these steps
  • Yoga Book Nougat Stock ROM
    XDA root Yoga Book
    XDA root Yoga Book revised

    Monday, April 30, 2018

    Resurrect Galaxy Tab 2 7.0 P3113

    I discovered that a part time gal at work had no phone and no computer due to repairs. Since she is also a student at a local community college, I volunteered to give her my spare Android tablet. However, when I factory reset the Cyanogenmod build the tablet became stuck in the logo loop. Therefore, I needed to copy the following files to the tablet after connecting it to my Hewlet Packard laptop.

  • Android ROM
  • TWRP
  • Odin
  • Gapps
  • First install Odin on the PC. Second connect tablet to the PC and use ODIN to flash the TWRP image. Third, boot tablet into TWRP and copy the ROM and Gapps to the tablet. Fourth, use TWRP to install both files. Lastly Wipe/Dalvik and reboot.

    Sunday, April 1, 2018

    Using CSS to Fit Images into an HTML Div

    Below are two Div classes meant to display content side by side across a page

    .left {
    width: 50%;
    float: left;
    color: black;
    margin: 0 auto;
    height: 300px;
    border-radius: 10px;
    box-shadow: 5px 5px 5px #000000;
    float: left;
    color: black;
    margin: 0 auto;
    width: 50%;
    height: 300px;
    border-radius: 10px;
    box-shadow: 5px 5px 5px #000000;

    Here is the image class definition

    img { object-fit: contain; display: inline-block; }

    Here is the image that will appear in the left div.

    <div class="left" title="Managing Shedule"> 
    <img width="350px" src="slides/web1.png"/>

    Tuesday, February 20, 2018

    Android: HttpURLConnection java.io.FileNotFoundException

    This is a nasty little error that I was seeing in the Log Cat while debugging my Android app.
    I was using
    //letterStrings is an ArrayList() populated with 'aaa','bbb','ccc','ddd'
    JSONArray jsonArray = new JSONArray(letterStrings);
    //jsonArray looks like this: ['aaa','bbb','ccc','ddd'];
    sNotes = 'These are my notes';
    URL url = null;
    HttpURLConnection urlConnection = null;
    String link = "http://somewebsite.com?&userID=3&jsonArray="+jsonArray+"¬es="+sNotes;
    // The above looks like this when resolved: "http://somewebsite.com?&userID=3&jsonArray=['aaa','bbb','ccc','ddd']¬es=These are my notes";
    url = new URL(link);
    urlConnection = (HttpURLConnection) url.openConnection();
    Funny thing is that the resolved string link runs just fine from the browser address bar.
    From within Android using HttpURLConnection, the link results in a FileNotFoundException.
    Why? You ask.
    Because I must make sure that the values for jsonArray and sNotes are properly formatted for the URLconnection.
    Therefore, I must first do the following before I put together the string link.
    String urlNotes = URLEncoder.encode(snotes, "UTF-8");
    String urlJson = URLEncoder.encode(jsonArray.toString(), "UTF-8");
    Now the String link = "http://somewebsite.com?&userID=3&jsonArray="+urlJson+"¬es="+urlNotes;

    Android Overlay a First Run Tutorial screen over the Main Activity

    Here is a great link on how to create the overlay. Christian Peters

    Tuesday, December 5, 2017

    Inserting Dates and Times from Visual Basic Web Form to MySQL Database

    Not pretty but it resolves that invalid string error.

    ASP code / mark up:
    <asp:TextBox> TextMode='Date' ID='StartDateBox' runat='server'</asp:TextBox>
    <asp:TextBox> TextMode='Time' ID='StartTimeBox'runat='server'</asp:TextBox>
    Visual Basic server code:
    Dim sTime As DateTime = Convert.ToDateTime(StartTimeBox.Text.toString) 
    Dim insertstring as String='INSERT INTO [sometable] (Start_Date, Start_Time) values (@sd, @st)'
    Dim mySqlcmnd = New MySqlCommand(insertstring, [your db connection])
    mySqlcmnd.Parameters.AddWithValue('sd', StartDateBox.Text)
    ' 24 hour format
    mySqlcmnd.Parameters.AddWithValue('st', sTime.ToString("HH:mm"))
    Dim rowCnt as Integer = mySqlcmnd.ExecuteNonQuery

    Sunday, November 5, 2017

    Android to PHP Calendar Week View

    I need to display a week of data between the Sunday and Saturday that surround a given date.


    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    //current date on mobile
    String formattedDate = df.format(Calendar.getInstance().getTime());
    //format the get
    String url = HOME_PAGE+"/mobile/getsessions.php?sessDate="+formattedDate";


    $sessDate=mysqli_real_escape_string($dbconn, $sessDate);

    //Get the day number out of 7 days
    $weekdaynum = date('w', strtotime($sessDate));
    // the following will handle what happens when a date falls on Sunday or Saturday.
    // I DO NOT want to slide a week out in either direction
    switch ($weekdaynum) {
    case 0: // sunday
    $startAtSun = strtotime('this sunday', strtotime($sessDate));
    $endAtSat = strtotime('this saturday', strtotime($sessDate));
    case 6: // saturday
    $startAtSun = strtotime('last sunday', strtotime($sessDate));
    $endAtSat = strtotime('this saturday', strtotime($sessDate));
    default: // all other days
    $startAtSun = strtotime('last sunday', strtotime($sessDate));
    $endAtSat = strtotime('this saturday', strtotime($sessDate));

    $format = 'Y-m-d';
    $week_start = date($format, $startAtSun);
    $week_end = date($format, $endAtSat);