Giter Club home page Giter Club logo

flashlight's Introduction

Speak

Summary

The base of this project is Android Text to Speech. While reading, I come across some heavy words that are hard to pronounce. Android 6.0 Marshmallow introduced a new floating text selection toolbar, which brings the standard text selection actions, like cut, copy, and paste, closer to the text you’ve selected. Even better though is the new ACTION_PROCESS_TEXT which makes it possible for any app to add custom actions to that text selection toolbar.

alt text

Taking advantage of this feature, this app passes the selected text to itself and speaks it out.

Downloads

Download the .apk file or the source code here.

Apk : Speak.apk

Zip : Speak.zip

Tar.gz : Speak.tar.gz

Code

The majority of the code is written in Java and is simple. For enabling custom text selection:

(1.) AndroidManifest.xml

      <activity android:name=".MainActivity" android:windowSoftInputMode="stateAlwaysVisible">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

            <intent-filter>
                <action android:name="android.intent.action.PROCESS_TEXT"/>

                <category android:name="android.intent.category.DEFAULT" />

                <data android:mimeType="text/*"/>
            </intent-filter>
        </activity>

(2.) MainActivity.java

      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.process_text_main);
          CharSequence text = getIntent().getCharSequenceExtra(Intent.EXTRA_PROCESS_TEXT);
          // process the text
      }

Contributing

Any help, including feedback, is highly appreciated. I have just started out with Android and I’m relatively new to app development.

  1. Fork it!
  2. Create your feature branch: git checkout -b new-branch
  3. Commit your changes: git commit -am 'Make a valuable addition'
  4. Push to the branch: git push origin new-feature
  5. Submit a pull request :D

Next Step

Once started, an app can never be completely finished.

  • Try to make a service out of the app.

flashlight's People

Contributors

dee-y avatar kant avatar rlf89 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

flashlight's Issues

Logo proposal

Hello, i am a graphic designer and i'd like to contribute a logo to your project, it's free of course.

add blinking light in order to look more feature

add this with UI in order to add blinking light . I am beginner so I don't know about mobile developement
public void toggle(View view)
{
Button button = (Button) view;
// mine coding for disco light
if(button.getText().equals("Switch On") )
{
int i=1000;
while (i>3)
{
if(i%80!=0)
{
//button.setText(R.string.switch_on_text);
torchToggle("off");
}
if(i%80==0)
{
// button.setText(R.string.switch_off_text);
torchToggle("on");
}
if (i==10000)
{
button.setText(R.string.switch_off_text);
torchToggle("off");
break;
}
i++;
}
}
// mine coding

}

add more gestures & details on power consumption

I haven't found a single word on how much extra energy that service would consume if left working in background.

As for 'more gestures' feature request, actually, this doesn't relate to the flashlight. I'd like to build a similar background service that would listen to 'triple wrist-twist' gestures clockwise and counter clock wise when the phone is locked to perform two different BLE requests, but I am not quite sure how to recognize such gestures (if possible at all)

Null Pointer Exception onSensorChanged

Describe the bug
Upon vibrating the phone app is crashing with the following exception!

Exception

FATAL EXCEPTION: main
Process: android.nachiketa.flashlight, PID: 13636
java.lang.NullPointerException
	at java.util.Objects.requireNonNull(Objects.java:203)
	at android.nachiketa.flashlight.Global.changeBackground(Global.java:34)
	at android.nachiketa.flashlight.Global.torchToggle(Global.java:55)
	at android.nachiketa.flashlight.FlashlightShakeToggle.onSensorChanged(FlashlightShakeToggle.java:67)
	at android.hardware.SystemSensorManager$SensorEventQueue.dispatchSensorEvent(SystemSensorManager.java:857)
	at android.os.MessageQueue.nativePollOnce(Native Method)
	at android.os.MessageQueue.next(MessageQueue.java:336)
	at android.os.Looper.loop(Looper.java:181)
	at android.app.ActivityThread.main(ActivityThread.java:7562)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)

Device details
Android version: 10
Device vendor: Xaomi
Device name: Redmi note 9s

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.