mirror of
https://github.com/SimpleMobileTools/Simple-Flashlight.git
synced 2025-02-16 20:00:40 +01:00
add About section
This commit is contained in:
parent
0633d0eceb
commit
92d61fb2d1
@ -28,6 +28,7 @@ android {
|
||||
dependencies {
|
||||
compile fileTree(dir: 'libs', include: ['*.jar'])
|
||||
compile 'com.android.support:appcompat-v7:23.3.0'
|
||||
compile 'com.jakewharton:butterknife:7.0.1'
|
||||
}
|
||||
|
||||
def Properties props = new Properties()
|
||||
|
13
app/proguard-rules.pro
vendored
13
app/proguard-rules.pro
vendored
@ -15,3 +15,16 @@
|
||||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
||||
# public *;
|
||||
#}
|
||||
|
||||
# Butterknife
|
||||
-keep class butterknife.** { *; }
|
||||
-dontwarn butterknife.internal.**
|
||||
-keep class **$$ViewBinder { *; }
|
||||
|
||||
-keepclasseswithmembernames class * {
|
||||
@butterknife.* <fields>;
|
||||
}
|
||||
|
||||
-keepclasseswithmembernames class * {
|
||||
@butterknife.* <methods>;
|
||||
}
|
||||
|
@ -20,7 +20,7 @@
|
||||
android:supportsRtl="true"
|
||||
android:theme="@style/AppTheme">
|
||||
<activity
|
||||
android:name="com.simplemobiletools.flashlight.MainActivity"
|
||||
android:name=".MainActivity"
|
||||
android:screenOrientation="portrait">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN"/>
|
||||
@ -29,8 +29,13 @@
|
||||
</intent-filter>
|
||||
</activity>
|
||||
|
||||
<activity
|
||||
android:name=".AboutActivity"
|
||||
android:label="@string/about"
|
||||
android:screenOrientation="portrait"/>
|
||||
|
||||
<receiver
|
||||
android:name="com.simplemobiletools.flashlight.MyWidgetProvider"
|
||||
android:name=".MyWidgetProvider"
|
||||
android:icon="@mipmap/ic_launcher"
|
||||
android:label="Simple Flashlight">
|
||||
<intent-filter>
|
||||
|
@ -0,0 +1,52 @@
|
||||
package com.simplemobiletools.flashlight;
|
||||
|
||||
import android.content.res.Resources;
|
||||
import android.os.Bundle;
|
||||
import android.support.v7.app.AppCompatActivity;
|
||||
import android.text.Html;
|
||||
import android.text.method.LinkMovementMethod;
|
||||
import android.widget.TextView;
|
||||
|
||||
import java.util.Calendar;
|
||||
|
||||
import butterknife.Bind;
|
||||
import butterknife.ButterKnife;
|
||||
|
||||
public class AboutActivity extends AppCompatActivity {
|
||||
@Bind(R.id.about_copyright) TextView copyright;
|
||||
@Bind(R.id.about_version) TextView version;
|
||||
@Bind(R.id.about_email) TextView emailTV;
|
||||
private Resources res;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_about);
|
||||
ButterKnife.bind(this);
|
||||
res = getResources();
|
||||
|
||||
setupEmail();
|
||||
setupVersion();
|
||||
setupCopyright();
|
||||
}
|
||||
|
||||
private void setupEmail() {
|
||||
final String email = res.getString(R.string.email);
|
||||
final String appName = res.getString(R.string.app_name);
|
||||
final String href = "<a href=\"mailto:" + email + "?subject=" + appName + "\">" + email + "</a>";
|
||||
emailTV.setText(Html.fromHtml(href));
|
||||
emailTV.setMovementMethod(LinkMovementMethod.getInstance());
|
||||
}
|
||||
|
||||
private void setupVersion() {
|
||||
final String versionName = BuildConfig.VERSION_NAME;
|
||||
final String versionText = String.format(res.getString(R.string.version), versionName);
|
||||
version.setText(versionText);
|
||||
}
|
||||
|
||||
private void setupCopyright() {
|
||||
final int year = Calendar.getInstance().get(Calendar.YEAR);
|
||||
final String copyrightText = String.format(res.getString(R.string.copyright), year);
|
||||
copyright.setText(copyrightText);
|
||||
}
|
||||
}
|
@ -1,7 +1,11 @@
|
||||
package com.simplemobiletools.flashlight;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.v7.app.AppCompatActivity;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuInflater;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.view.WindowManager;
|
||||
import android.widget.ImageView;
|
||||
@ -20,6 +24,25 @@ public class MainActivity extends AppCompatActivity implements MyCamera {
|
||||
setupCameraImpl();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onCreateOptionsMenu(Menu menu) {
|
||||
MenuInflater inflater = getMenuInflater();
|
||||
inflater.inflate(R.menu.menu, menu);
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onOptionsItemSelected(MenuItem item) {
|
||||
switch (item.getItemId()) {
|
||||
case R.id.about:
|
||||
final Intent intent = new Intent(getApplicationContext(), AboutActivity.class);
|
||||
startActivity(intent);
|
||||
return true;
|
||||
default:
|
||||
return super.onOptionsItemSelected(item);
|
||||
}
|
||||
}
|
||||
|
||||
private void setupCameraImpl() {
|
||||
cameraImpl = new MyCameraImpl(this);
|
||||
cameraImpl.toggleFlashlight();
|
||||
|
55
app/src/main/res/layout/activity_about.xml
Normal file
55
app/src/main/res/layout/activity_about.xml
Normal file
@ -0,0 +1,55 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<RelativeLayout
|
||||
android:id="@+id/about_holder"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_margin="@dimen/activity_margin">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/about_website"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:autoLink="web"
|
||||
android:text="@string/website"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/about_email_label"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@+id/about_website"
|
||||
android:layout_marginTop="@dimen/activity_margin"
|
||||
android:text="@string/email_label"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/about_email"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@+id/about_email_label"
|
||||
android:text="@string/email"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/about_license"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@+id/about_email"
|
||||
android:layout_marginTop="@dimen/activity_margin"
|
||||
android:text="@string/license"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/about_version"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_above="@+id/about_copyright"
|
||||
android:gravity="center_horizontal"
|
||||
android:text="v 1.0"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/about_copyright"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentBottom="true"
|
||||
android:gravity="center_horizontal"
|
||||
android:text="Copyright © Simple Mobile Tools 2000"/>
|
||||
|
||||
</RelativeLayout>
|
@ -3,10 +3,7 @@
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingBottom="@dimen/activity_vertical_margin"
|
||||
android:paddingLeft="@dimen/activity_horizontal_margin"
|
||||
android:paddingRight="@dimen/activity_horizontal_margin"
|
||||
android:paddingTop="@dimen/activity_vertical_margin">
|
||||
android:paddingBottom="@dimen/activity_margin">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/toggle_btn"
|
||||
|
8
app/src/main/res/menu/menu.xml
Normal file
8
app/src/main/res/menu/menu.xml
Normal file
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<menu xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
<item
|
||||
android:id="@+id/about"
|
||||
android:title="@string/about"
|
||||
app:showAsAction="never"/>
|
||||
</menu>
|
@ -1,5 +1,3 @@
|
||||
<resources>
|
||||
<!-- Default screen margins, per the Android Design guidelines. -->
|
||||
<dimen name="activity_horizontal_margin">16dp</dimen>
|
||||
<dimen name="activity_vertical_margin">16dp</dimen>
|
||||
<dimen name="activity_margin">16dp</dimen>
|
||||
</resources>
|
||||
|
@ -1,4 +1,13 @@
|
||||
<resources>
|
||||
<string name="app_name">Simple Flashlight</string>
|
||||
<string name="camera_error">Obtaining the camera failed</string>
|
||||
|
||||
<!-- About -->
|
||||
<string name="about">About</string>
|
||||
<string name="website">For more simple apps please visit:\nhttp://simplemobiletools.com</string>
|
||||
<string name="email_label">You can send your feedback and new app suggestions at:</string>
|
||||
<string name="email">hello@simplemobiletools.com</string>
|
||||
<string name="license">License</string>
|
||||
<string name="version">v %1$s</string>
|
||||
<string name="copyright">Copyright © Simple Mobile Tools %1$d</string>
|
||||
</resources>
|
||||
|
Loading…
x
Reference in New Issue
Block a user